From 1ddd04b55189ddcedce34b96e2ec00baafcdbbc4 Mon Sep 17 00:00:00 2001 From: linkmluser Date: Wed, 10 Apr 2024 18:54:19 -0700 Subject: [PATCH] Extending schema --- poetry.lock | 1821 +++---- project/excel/linkml_common.xlsx | Bin 45894 -> 59945 bytes project/graphql/linkml_common.graphql | 464 +- project/jsonld/linkml_common.context.jsonld | 647 ++- project/jsonld/linkml_common.jsonld | 3168 ++++++++---- project/jsonschema/linkml_common.schema.json | 2793 +++++++++-- project/owl/linkml_common.owl.ttl | 1951 +++++--- project/prefixmap/linkml_common.yaml | 5 +- project/protobuf/linkml_common.proto | 458 +- project/shacl/linkml_common.shacl.ttl | 4436 +++++++++++------ project/shex/linkml_common.shex | 410 +- project/sqlschema/linkml_common.sql | 3360 ++++++++++--- pyproject.toml | 2 +- .../Collection-ExtractiveIndustries-001.yaml | 92 + .../valid/Collection-PowerPlant-001.yaml | 118 + .../examples/valid/MiningFacility-001.yaml | 30 + src/linkml_common/datamodel/linkml_common.py | 1297 ++++- src/linkml_common/schema/bibliographic.yaml | 6 +- .../schema/civilengineering.yaml | 45 + src/linkml_common/schema/core.yaml | 16 +- .../schema/energytechnology.yaml | 103 + src/linkml_common/schema/engineering.yaml | 3 + .../schema/extractiveindustry.yaml | 121 + src/linkml_common/schema/financial.yaml | 5 +- src/linkml_common/schema/geography.yaml | 6 +- src/linkml_common/schema/healthcare.yaml | 4 +- src/linkml_common/schema/investigations.yaml | 27 + src/linkml_common/schema/linkml_common.yaml | 4 + src/linkml_common/schema/patterns.yaml | 191 +- src/linkml_common/schema/social.yaml | 1 + 30 files changed, 16378 insertions(+), 5206 deletions(-) create mode 100644 src/data/examples/valid/Collection-ExtractiveIndustries-001.yaml create mode 100644 src/data/examples/valid/Collection-PowerPlant-001.yaml create mode 100644 src/data/examples/valid/MiningFacility-001.yaml create mode 100644 src/linkml_common/schema/civilengineering.yaml create mode 100644 src/linkml_common/schema/energytechnology.yaml create mode 100644 src/linkml_common/schema/extractiveindustry.yaml diff --git a/poetry.lock b/poetry.lock index f13d247..70ad869 100644 --- a/poetry.lock +++ b/poetry.lock @@ -73,14 +73,14 @@ test = ["dateparser (>=1.0.0,<2.0.0)", "pre-commit", "pytest", "pytest-cov", "py [[package]] name = "asteval" -version = "0.9.31" +version = "0.9.32" description = "Safe, minimalistic evaluator of python expression using ast module" category = "main" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "asteval-0.9.31-py3-none-any.whl", hash = "sha256:2761750c184d97707c292b62df3b10e330a809a2201721acc435a2b89a114263"}, - {file = "asteval-0.9.31.tar.gz", hash = "sha256:a2da066b6696dba9835c5f7dec63e0ffb5bd2b4e3bb5f0b9a604aeafb17d833d"}, + {file = "asteval-0.9.32-py3-none-any.whl", hash = "sha256:4d0da45a15f15eeb88bb53cf4c352591ccb00f00f81f74649fd7084519adc3fe"}, + {file = "asteval-0.9.32.tar.gz", hash = "sha256:3bef25a973d378fda21c83a38c6292c4d0d94773f49f42073e69dbb19932bb74"}, ] [package.extras] @@ -145,14 +145,14 @@ lxml = ["lxml"] [[package]] name = "bioregistry" -version = "0.10.132" +version = "0.10.193" description = "Integrated registry of biological databases and nomenclatures" category = "dev" optional = false python-versions = ">=3.8" files = [ - {file = "bioregistry-0.10.132-py3-none-any.whl", hash = "sha256:f8f3e3b77ca1f6220bf45b63ead717fe130b0adb942305c6ede32a3a4316760e"}, - {file = "bioregistry-0.10.132.tar.gz", hash = "sha256:1fb30ba0229fc04d110de44a8c82616483832b3e7ec28fe2fa559badcffa4e73"}, + {file = "bioregistry-0.10.193-py3-none-any.whl", hash = "sha256:473b67701d8c5004afaa2f7223ca81700a97509b45ba03720c581ed3dcfc5ce2"}, + {file = "bioregistry-0.10.193.tar.gz", hash = "sha256:a99883e3ff5979092ca98801f26e5aaf272350ba063111cc49d315f86ff05b38"}, ] [package.dependencies] @@ -165,7 +165,7 @@ requests = "*" tqdm = "*" [package.extras] -align = ["beautifulsoup4", "class-resolver", "defusedxml", "fairsharing-client (>=0.1.0)", "pyyaml", "tabulate"] +align = ["beautifulsoup4", "class-resolver", "defusedxml", "fairsharing-client (>=0.1.0)", "pandas", "pyyaml", "tabulate"] charts = ["jinja2", "matplotlib", "matplotlib-venn", "pandas", "seaborn"] docs = ["autodoc-pydantic", "sphinx", "sphinx-automodapi", "sphinx-click", "sphinx-rtd-theme"] export = ["ndex2", "pyyaml", "rdflib", "rdflib-jsonld"] @@ -176,14 +176,14 @@ web = ["bootstrap-flask (<=2.0.0)", "curies[fastapi]", "fastapi", "flask (<2.2.4 [[package]] name = "cachetools" -version = "5.3.2" +version = "5.3.3" description = "Extensible memoizing collections and decorators" -category = "main" +category = "dev" optional = false python-versions = ">=3.7" files = [ - {file = "cachetools-5.3.2-py3-none-any.whl", hash = "sha256:861f35a13a451f94e301ce2bec7cac63e881232ccce7ed67fab9b5df4d3beaa1"}, - {file = "cachetools-5.3.2.tar.gz", hash = "sha256:086ee420196f7b2ab9ca2db2520aca326318b68fe5ba8bc4d49cca91add450f2"}, + {file = "cachetools-5.3.3-py3-none-any.whl", hash = "sha256:0abad1021d3f8325b2fc1d2e9c8b9c9d57b04c3932657a72465447332c24d945"}, + {file = "cachetools-5.3.3.tar.gz", hash = "sha256:ba29e2dfa0b8b556606f097407ed1aa62080ee108ab0dc5ec9d6a723a007d105"}, ] [[package]] @@ -242,7 +242,7 @@ rdflib = ">=0.4.2" name = "chardet" version = "5.2.0" description = "Universal encoding detector for Python 3" -category = "main" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -352,14 +352,14 @@ files = [ [[package]] name = "class-resolver" -version = "0.4.2" +version = "0.4.3" 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"}, + {file = "class_resolver-0.4.3-py3-none-any.whl", hash = "sha256:9a0e3420edc262f1eb357580ff607ddc5806b9c0d19354a6f3dede15a69fbea0"}, + {file = "class_resolver-0.4.3.tar.gz", hash = "sha256:18bb9983cb377f669e5900979de4aa65449d95ead61838fa12862958998c71a2"}, ] [package.dependencies] @@ -439,14 +439,14 @@ files = [ [[package]] name = "curies" -version = "0.7.6" +version = "0.7.9" description = "Idiomatic conversion between URIs and compact URIs (CURIEs)." category = "main" optional = false python-versions = ">=3.8" files = [ - {file = "curies-0.7.6-py3-none-any.whl", hash = "sha256:3307e757e47ed4384edb705c73cad40ad5e688e2dea263a60e6a5e5a6c33105d"}, - {file = "curies-0.7.6.tar.gz", hash = "sha256:f86da3539cee349249f5b64db99651053649551920b9fe945c150719c8b9b40e"}, + {file = "curies-0.7.9-py3-none-any.whl", hash = "sha256:e4c5beb91642376953c94db0ee2fb5d2b011c3b16749516436114ba61442f260"}, + {file = "curies-0.7.9.tar.gz", hash = "sha256:3b63c5fea7b0e967629a3a384b1a8c59b56c503487c1dcbacddeab59e25db4d8"}, ] [package.dependencies] @@ -525,18 +525,6 @@ files = [ [package.dependencies] packaging = "*" -[[package]] -name = "distlib" -version = "0.3.8" -description = "Distribution utilities" -category = "main" -optional = false -python-versions = "*" -files = [ - {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" @@ -550,14 +538,13 @@ files = [ [[package]] name = "editorconfig" -version = "0.12.3" +version = "0.12.4" description = "EditorConfig File Locator and Interpreter for Python" category = "dev" optional = false python-versions = "*" files = [ - {file = "EditorConfig-0.12.3-py3-none-any.whl", hash = "sha256:6b0851425aa875b08b16789ee0eeadbd4ab59666e9ebe728e526314c4a2e52c1"}, - {file = "EditorConfig-0.12.3.tar.gz", hash = "sha256:57f8ce78afcba15c8b18d46b5170848c88d56fd38f05c2ec60dbbfcb8996e89e"}, + {file = "EditorConfig-0.12.4.tar.gz", hash = "sha256:24857fa1793917dd9ccf0c7810a07e05404ce9b823521c7dce22a4fb5d125f80"}, ] [[package]] @@ -663,23 +650,6 @@ files = [ {file = "fastobo-0.12.3.tar.gz", hash = "sha256:f375932a24b078706797eb9296740f2d2e6987a34309bda7c9f235aba1d74217"}, ] -[[package]] -name = "filelock" -version = "3.13.1" -description = "A platform independent file lock." -category = "main" -optional = false -python-versions = ">=3.8" -files = [ - {file = "filelock-3.13.1-py3-none-any.whl", hash = "sha256:57dbda9b35157b05fb3e58ee91448612eb674172fab98ee235ccb0b5bee19a1c"}, - {file = "filelock-3.13.1.tar.gz", hash = "sha256:521f5f56c50f8426f5e03ad3b281b490a87ef15bc6c526f168290f0c7148d44e"}, -] - -[package.extras] -docs = ["furo (>=2023.9.10)", "sphinx (>=7.2.6)", "sphinx-autodoc-typehints (>=1.24)"] -testing = ["covdefaults (>=2.3)", "coverage (>=7.3.2)", "diff-cover (>=8)", "pytest (>=7.4.3)", "pytest-cov (>=4.1)", "pytest-mock (>=3.12)", "pytest-timeout (>=2.2)"] -typing = ["typing-extensions (>=4.8)"] - [[package]] name = "fqdn" version = "1.5.1" @@ -747,19 +717,20 @@ beautifulsoup4 = "*" [[package]] name = "google-api-core" -version = "2.16.2" +version = "2.18.0" description = "Google API client core library" category = "dev" optional = false python-versions = ">=3.7" files = [ - {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"}, + {file = "google-api-core-2.18.0.tar.gz", hash = "sha256:62d97417bfc674d6cef251e5c4d639a9655e00c45528c4364fbfebb478ce72a9"}, + {file = "google_api_core-2.18.0-py3-none-any.whl", hash = "sha256:5a63aa102e0049abe85b5b88cb9409234c1f70afcda21ce1e40b285b9629c1d6"}, ] [package.dependencies] google-auth = ">=2.14.1,<3.0.dev0" googleapis-common-protos = ">=1.56.2,<2.0.dev0" +proto-plus = ">=1.22.3,<2.0.0dev" protobuf = ">=3.19.5,<3.20.0 || >3.20.0,<3.20.1 || >3.20.1,<4.21.0 || >4.21.0,<4.21.1 || >4.21.1,<4.21.2 || >4.21.2,<4.21.3 || >4.21.3,<4.21.4 || >4.21.4,<4.21.5 || >4.21.5,<5.0.0.dev0" requests = ">=2.18.0,<3.0.0.dev0" @@ -770,33 +741,33 @@ grpcio-gcp = ["grpcio-gcp (>=0.2.2,<1.0.dev0)"] [[package]] name = "google-api-python-client" -version = "2.116.0" +version = "2.125.0" description = "Google API Client Library for Python" category = "dev" optional = false python-versions = ">=3.7" files = [ - {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"}, + {file = "google-api-python-client-2.125.0.tar.gz", hash = "sha256:51a0385cff65ec135106e8be60ee7112557396dde5f44113ae23912baddda143"}, + {file = "google_api_python_client-2.125.0-py2.py3-none-any.whl", hash = "sha256:0a62b60fbd61b61a455f15d925264b3301099b67cafd2d33cf8bf151f1fca4f4"}, ] [package.dependencies] google-api-core = ">=1.31.5,<2.0.0 || >2.3.0,<3.0.0.dev0" -google-auth = ">=1.19.0,<3.0.0.dev0" -google-auth-httplib2 = ">=0.1.0" -httplib2 = ">=0.15.0,<1.dev0" +google-auth = ">=1.32.0,<2.24.0 || >2.24.0,<2.25.0 || >2.25.0,<3.0.0.dev0" +google-auth-httplib2 = ">=0.2.0,<1.0.0" +httplib2 = ">=0.19.0,<1.dev0" uritemplate = ">=3.0.1,<5" [[package]] name = "google-auth" -version = "2.27.0" +version = "2.29.0" description = "Google Authentication Library" category = "dev" optional = false python-versions = ">=3.7" files = [ - {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"}, + {file = "google-auth-2.29.0.tar.gz", hash = "sha256:672dff332d073227550ffc7457868ac4218d6c500b155fe6cc17d2b13602c360"}, + {file = "google_auth-2.29.0-py2.py3-none-any.whl", hash = "sha256:d452ad095688cd52bae0ad6fafe027f6a6d6f560e810fec20914e17a09526415"}, ] [package.dependencies] @@ -848,14 +819,14 @@ tool = ["click (>=6.0.0)"] [[package]] name = "googleapis-common-protos" -version = "1.62.0" +version = "1.63.0" description = "Common protobufs used in Google APIs" category = "dev" optional = false python-versions = ">=3.7" files = [ - {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"}, + {file = "googleapis-common-protos-1.63.0.tar.gz", hash = "sha256:17ad01b11d5f1d0171c06d3ba5c04c54474e883b66b949722b4938ee2694ef4e"}, + {file = "googleapis_common_protos-1.63.0-py2.py3-none-any.whl", hash = "sha256:ae45f75702f7c08b541f750854a678bd8f534a1a6bace6afe975f1d0a82d6632"}, ] [package.dependencies] @@ -866,20 +837,20 @@ grpc = ["grpcio (>=1.44.0,<2.0.0.dev0)"] [[package]] name = "graphviz" -version = "0.20.1" +version = "0.20.3" description = "Simple Python interface for Graphviz" category = "dev" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "graphviz-0.20.1-py3-none-any.whl", hash = "sha256:587c58a223b51611c0cf461132da386edd896a029524ca61a1462b880bf97977"}, - {file = "graphviz-0.20.1.zip", hash = "sha256:8c58f14adaa3b947daf26c19bc1e98c4e0702cdc31cf99153e6f06904d492bf8"}, + {file = "graphviz-0.20.3-py3-none-any.whl", hash = "sha256:81f848f2904515d8cd359cc611faba817598d2feaac4027b266aa3eda7b3dde5"}, + {file = "graphviz-0.20.3.zip", hash = "sha256:09d6bc81e6a9fa392e7ba52135a9d49f1ed62526f96499325930e87ca1b5925d"}, ] [package.extras] dev = ["flake8", "pep8-naming", "tox (>=3)", "twine", "wheel"] -docs = ["sphinx (>=5)", "sphinx-autodoc-typehints", "sphinx-rtd-theme"] -test = ["coverage", "mock (>=4)", "pytest (>=7)", "pytest-cov", "pytest-mock (>=3)"] +docs = ["sphinx (>=5,<7)", "sphinx-autodoc-typehints", "sphinx-rtd-theme"] +test = ["coverage", "pytest (>=7,<8.1)", "pytest-cov", "pytest-mock (>=3)"] [[package]] name = "greenlet" @@ -955,14 +926,14 @@ test = ["objgraph", "psutil"] [[package]] name = "gspread" -version = "6.0.0" +version = "6.1.0" description = "Google Spreadsheets Python API" category = "dev" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "gspread-6.0.0-py3-none-any.whl", hash = "sha256:a2c5e512b758577b0bde8e071c69bbd820646fe87e843a26d0aed0e8b0ad0dc1"}, - {file = "gspread-6.0.0.tar.gz", hash = "sha256:3b5efe315aeaa290d21befc8ee7bb0239db78c7b495d8831ae29fd1a182292a1"}, + {file = "gspread-6.1.0-py3-none-any.whl", hash = "sha256:67aa3335cfcbb2625e41b53129433ba779f2890244a4c532624362ce5e022342"}, + {file = "gspread-6.1.0.tar.gz", hash = "sha256:576b72b628b251d2ee41e02b982d3c714d511d2a5aa3a88e587ed9efc4d6e752"}, ] [package.dependencies] @@ -1054,6 +1025,17 @@ files = [ {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-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:055b71bbc37af5c3c5861afe789e15211d2d3d06ac51ee5a647adf4def19c0ea"}, + {file = "ijson-3.2.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:c075a547de32f265a5dd139ab2035900fef6653951628862e5cdce0d101af557"}, + {file = "ijson-3.2.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:457f8a5fc559478ac6b06b6d37ebacb4811f8c5156e997f0d87d708b0d8ab2ae"}, + {file = "ijson-3.2.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9788f0c915351f41f0e69ec2618b81ebfcf9f13d9d67c6d404c7f5afda3e4afb"}, + {file = "ijson-3.2.3-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fa234ab7a6a33ed51494d9d2197fb96296f9217ecae57f5551a55589091e7853"}, + {file = "ijson-3.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bdd0dc5da4f9dc6d12ab6e8e0c57d8b41d3c8f9ceed31a99dae7b2baf9ea769a"}, + {file = "ijson-3.2.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:c6beb80df19713e39e68dc5c337b5c76d36ccf69c30b79034634e5e4c14d6904"}, + {file = "ijson-3.2.3-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:a2973ce57afb142d96f35a14e9cfec08308ef178a2c76b8b5e1e98f3960438bf"}, + {file = "ijson-3.2.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:105c314fd624e81ed20f925271ec506523b8dd236589ab6c0208b8707d652a0e"}, + {file = "ijson-3.2.3-cp312-cp312-win32.whl", hash = "sha256:ac44781de5e901ce8339352bb5594fcb3b94ced315a34dbe840b4cff3450e23b"}, + {file = "ijson-3.2.3-cp312-cp312-win_amd64.whl", hash = "sha256:0567e8c833825b119e74e10a7c29761dc65fcd155f5d4cb10f9d3b8916ef9912"}, {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"}, @@ -1114,43 +1096,63 @@ files = [ [[package]] name = "importlib-metadata" -version = "7.0.1" +version = "7.1.0" description = "Read metadata from Python packages" category = "dev" optional = false python-versions = ">=3.8" files = [ - {file = "importlib_metadata-7.0.1-py3-none-any.whl", hash = "sha256:4805911c3a4ec7c3966410053e9ec6a1fecd629117df5adee56dfc9432a1081e"}, - {file = "importlib_metadata-7.0.1.tar.gz", hash = "sha256:f238736bb06590ae52ac1fab06a3a9ef1d8dce2b7a35b5ab329371d6c8f5d2cc"}, + {file = "importlib_metadata-7.1.0-py3-none-any.whl", hash = "sha256:30962b96c0c223483ed6cc7280e7f0199feb01a0e40cfae4d4450fc6fab1f570"}, + {file = "importlib_metadata-7.1.0.tar.gz", hash = "sha256:b78938b926ee8d5f020fc4772d487045805a55ddbad2ecf21c6d60938dc7fcd2"}, ] [package.dependencies] zipp = ">=0.5" [package.extras] -docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] +docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "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"] +testing = ["flufl.flake8", "importlib-resources (>=1.3)", "jaraco.test (>=5.4)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy", "pytest-perf (>=0.9.2)", "pytest-ruff (>=0.2.1)"] + +[[package]] +name = "importlib-resources" +version = "6.4.0" +description = "Read resources from Python packages" +category = "dev" +optional = false +python-versions = ">=3.8" +files = [ + {file = "importlib_resources-6.4.0-py3-none-any.whl", hash = "sha256:50d10f043df931902d4194ea07ec57960f66a80449ff867bfe782b4c486ba78c"}, + {file = "importlib_resources-6.4.0.tar.gz", hash = "sha256:cdb2b453b8046ca4e3798eb1d84f3cce1446a0e8e7b5ef4efb600f19fc398145"}, +] + +[package.dependencies] +zipp = {version = ">=3.1.0", markers = "python_version < \"3.10\""} + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] +testing = ["jaraco.test (>=5.4)", "pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy", "pytest-ruff (>=0.2.1)", "zipp (>=3.17)"] [[package]] name = "inflect" -version = "6.2.0" +version = "7.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"}, + {file = "inflect-7.2.0-py3-none-any.whl", hash = "sha256:b41e1677ea799f26f371a5d6d57b9eb966a5f9ba3b341a96464a6cac50aeccf3"}, + {file = "inflect-7.2.0.tar.gz", hash = "sha256:32feacfacfcae2f22e6fccdea10f0ddf26a638fac434d0dddaafbca0034f3784"}, ] [package.dependencies] -pydantic = ">=1.9.1" +more-itertools = "*" +typeguard = ">=4.0.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"] +docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +testing = ["pygments", "pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy", "pytest-ruff (>=0.2.1)"] [[package]] name = "iniconfig" @@ -1214,13 +1216,13 @@ i18n = ["Babel (>=2.7)"] [[package]] name = "jsbeautifier" -version = "1.14.11" +version = "1.15.1" description = "JavaScript unobfuscator and beautifier." category = "dev" optional = false python-versions = "*" files = [ - {file = "jsbeautifier-1.14.11.tar.gz", hash = "sha256:6b632581ea60dd1c133cd25a48ad187b4b91f526623c4b0fb5443ef805250505"}, + {file = "jsbeautifier-1.15.1.tar.gz", hash = "sha256:ebd733b560704c602d744eafc839db60a1ee9326e30a2a80c4adb8718adc1b24"}, ] [package.dependencies] @@ -1270,6 +1272,21 @@ files = [ [package.dependencies] hbreader = "*" +[[package]] +name = "jsonlines" +version = "4.0.0" +description = "Library with helpers for the jsonlines file format" +category = "dev" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jsonlines-4.0.0-py3-none-any.whl", hash = "sha256:185b334ff2ca5a91362993f42e83588a360cf95ce4b71a73548502bda52a7c55"}, + {file = "jsonlines-4.0.0.tar.gz", hash = "sha256:0c6d2c09117550c089995247f605ae4cf77dd1533041d366351f6f298822ea74"}, +] + +[package.dependencies] +attrs = ">=19.2.0" + [[package]] name = "jsonpatch" version = "1.33" @@ -1375,14 +1392,14 @@ linkml-runtime = ">=1.1.24" [[package]] name = "kgcl-schema" -version = "0.6.2" +version = "0.6.8" description = "Schema for the KGCL project." category = "dev" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "<4.0,>=3.9" 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"}, + {file = "kgcl_schema-0.6.8-py3-none-any.whl", hash = "sha256:84deb921203c5b94c9fa6386e7fec24593162abbccdadeb78a5f7231c0c75803"}, + {file = "kgcl_schema-0.6.8.tar.gz", hash = "sha256:7520e8fc7cd1546e3212ae868fae410720c4f2cea0e0a5e85ac277f63941d8bd"}, ] [package.dependencies] @@ -1411,14 +1428,14 @@ regex = ["regex"] [[package]] name = "linkml" -version = "1.6.10" +version = "1.7.8" description = "Linked Open Data Modeling Language" category = "dev" optional = false -python-versions = ">=3.8.1,<4.0.0" +python-versions = "<4.0.0,>=3.8.1" files = [ - {file = "linkml-1.6.10-py3-none-any.whl", hash = "sha256:d4bc8e756e70a735509da9eab733e783fbc0f7c3074ffae13d1b0fc14b4c7001"}, - {file = "linkml-1.6.10.tar.gz", hash = "sha256:70046ff7886ae0937b5222575a811657121c2fa8514619668b7a65621a4da885"}, + {file = "linkml-1.7.8-py3-none-any.whl", hash = "sha256:4b8ebe33b422517b08ca01802dc2899ac133c502a71d811c58fa6f4263130709"}, + {file = "linkml-1.7.8.tar.gz", hash = "sha256:af48ee1ad6751c8d20de2832dbeefe225da9be5f39a7f8ea7821a691cf7c0148"}, ] [package.dependencies] @@ -1431,11 +1448,11 @@ jinja2 = ">=3.1.0" jsonasobj2 = ">=1.0.3,<2.0.0" jsonschema = {version = ">=4.0.0", extras = ["format"]} linkml-dataops = "*" -linkml-runtime = ">=1.6.0" +linkml-runtime = ">=1.7.4" openpyxl = "*" parse = "*" prefixcommons = ">=0.1.7" -prefixmaps = ">=0.1.3" +prefixmaps = ">=0.2.2" pydantic = ">=1.0.0,<3.0.0" pyjsg = ">=0.11.6" pyshex = ">=0.7.20" @@ -1447,6 +1464,11 @@ requests = ">=2.22" sqlalchemy = ">=1.4.31" watchdog = ">=0.9.0" +[package.extras] +black = ["black (>=24.0.0)"] +shacl = ["pyshacl (>=0.25.0,<0.26.0)"] +tests = ["black (>=24.0.0)", "pyshacl (>=0.25.0,<0.26.0)"] + [[package]] name = "linkml-dataops" version = "0.1.0" @@ -1486,14 +1508,14 @@ pydantic = "*" [[package]] name = "linkml-runtime" -version = "1.6.3" +version = "1.7.5" description = "Runtime environment for LinkML, the Linked open data modeling language" category = "main" optional = false -python-versions = ">=3.7.6,<4.0.0" +python-versions = "<4.0,>=3.8" files = [ - {file = "linkml_runtime-1.6.3-py3-none-any.whl", hash = "sha256:08f616302ce493be775104c87bd5a2ec0eb2c67624e611a3f7e28c978d08a4d1"}, - {file = "linkml_runtime-1.6.3.tar.gz", hash = "sha256:88e3d0b776055723d187128c03527145dc1ffdc2d2a69e89f8aabce203d418a3"}, + {file = "linkml_runtime-1.7.5-py3-none-any.whl", hash = "sha256:c58000c7c68fa97b7d76c50421a85a64e25f07eec5bcac464bc00c4cd79007a6"}, + {file = "linkml_runtime-1.7.5.tar.gz", hash = "sha256:b31197a5398359441ae1ed43470c54377a1d08db961366dda670300dddcd71d7"}, ] [package.dependencies] @@ -1532,108 +1554,185 @@ ucumvert = ">=0.1.1,<0.2.0" [[package]] name = "lxml" -version = "5.1.0" +version = "5.2.1" 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"}, + {file = "lxml-5.2.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:1f7785f4f789fdb522729ae465adcaa099e2a3441519df750ebdccc481d961a1"}, + {file = "lxml-5.2.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6cc6ee342fb7fa2471bd9b6d6fdfc78925a697bf5c2bcd0a302e98b0d35bfad3"}, + {file = "lxml-5.2.1-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:794f04eec78f1d0e35d9e0c36cbbb22e42d370dda1609fb03bcd7aeb458c6377"}, + {file = "lxml-5.2.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c817d420c60a5183953c783b0547d9eb43b7b344a2c46f69513d5952a78cddf3"}, + {file = "lxml-5.2.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2213afee476546a7f37c7a9b4ad4d74b1e112a6fafffc9185d6d21f043128c81"}, + {file = "lxml-5.2.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b070bbe8d3f0f6147689bed981d19bbb33070225373338df755a46893528104a"}, + {file = "lxml-5.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e02c5175f63effbd7c5e590399c118d5db6183bbfe8e0d118bdb5c2d1b48d937"}, + {file = "lxml-5.2.1-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:3dc773b2861b37b41a6136e0b72a1a44689a9c4c101e0cddb6b854016acc0aa8"}, + {file = "lxml-5.2.1-cp310-cp310-manylinux_2_28_ppc64le.whl", hash = "sha256:d7520db34088c96cc0e0a3ad51a4fd5b401f279ee112aa2b7f8f976d8582606d"}, + {file = "lxml-5.2.1-cp310-cp310-manylinux_2_28_s390x.whl", hash = "sha256:bcbf4af004f98793a95355980764b3d80d47117678118a44a80b721c9913436a"}, + {file = "lxml-5.2.1-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:a2b44bec7adf3e9305ce6cbfa47a4395667e744097faed97abb4728748ba7d47"}, + {file = "lxml-5.2.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:1c5bb205e9212d0ebddf946bc07e73fa245c864a5f90f341d11ce7b0b854475d"}, + {file = "lxml-5.2.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:2c9d147f754b1b0e723e6afb7ba1566ecb162fe4ea657f53d2139bbf894d050a"}, + {file = "lxml-5.2.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:3545039fa4779be2df51d6395e91a810f57122290864918b172d5dc7ca5bb433"}, + {file = "lxml-5.2.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a91481dbcddf1736c98a80b122afa0f7296eeb80b72344d7f45dc9f781551f56"}, + {file = "lxml-5.2.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:2ddfe41ddc81f29a4c44c8ce239eda5ade4e7fc305fb7311759dd6229a080052"}, + {file = "lxml-5.2.1-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:a7baf9ffc238e4bf401299f50e971a45bfcc10a785522541a6e3179c83eabf0a"}, + {file = "lxml-5.2.1-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:31e9a882013c2f6bd2f2c974241bf4ba68c85eba943648ce88936d23209a2e01"}, + {file = "lxml-5.2.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:0a15438253b34e6362b2dc41475e7f80de76320f335e70c5528b7148cac253a1"}, + {file = "lxml-5.2.1-cp310-cp310-win32.whl", hash = "sha256:6992030d43b916407c9aa52e9673612ff39a575523c5f4cf72cdef75365709a5"}, + {file = "lxml-5.2.1-cp310-cp310-win_amd64.whl", hash = "sha256:da052e7962ea2d5e5ef5bc0355d55007407087392cf465b7ad84ce5f3e25fe0f"}, + {file = "lxml-5.2.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:70ac664a48aa64e5e635ae5566f5227f2ab7f66a3990d67566d9907edcbbf867"}, + {file = "lxml-5.2.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:1ae67b4e737cddc96c99461d2f75d218bdf7a0c3d3ad5604d1f5e7464a2f9ffe"}, + {file = "lxml-5.2.1-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f18a5a84e16886898e51ab4b1d43acb3083c39b14c8caeb3589aabff0ee0b270"}, + {file = "lxml-5.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c6f2c8372b98208ce609c9e1d707f6918cc118fea4e2c754c9f0812c04ca116d"}, + {file = "lxml-5.2.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:394ed3924d7a01b5bd9a0d9d946136e1c2f7b3dc337196d99e61740ed4bc6fe1"}, + {file = "lxml-5.2.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5d077bc40a1fe984e1a9931e801e42959a1e6598edc8a3223b061d30fbd26bbc"}, + {file = "lxml-5.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:764b521b75701f60683500d8621841bec41a65eb739b8466000c6fdbc256c240"}, + {file = "lxml-5.2.1-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:3a6b45da02336895da82b9d472cd274b22dc27a5cea1d4b793874eead23dd14f"}, + {file = "lxml-5.2.1-cp311-cp311-manylinux_2_28_ppc64le.whl", hash = "sha256:5ea7b6766ac2dfe4bcac8b8595107665a18ef01f8c8343f00710b85096d1b53a"}, + {file = "lxml-5.2.1-cp311-cp311-manylinux_2_28_s390x.whl", hash = "sha256:e196a4ff48310ba62e53a8e0f97ca2bca83cdd2fe2934d8b5cb0df0a841b193a"}, + {file = "lxml-5.2.1-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:200e63525948e325d6a13a76ba2911f927ad399ef64f57898cf7c74e69b71095"}, + {file = "lxml-5.2.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:dae0ed02f6b075426accbf6b2863c3d0a7eacc1b41fb40f2251d931e50188dad"}, + {file = "lxml-5.2.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:ab31a88a651039a07a3ae327d68ebdd8bc589b16938c09ef3f32a4b809dc96ef"}, + {file = "lxml-5.2.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:df2e6f546c4df14bc81f9498bbc007fbb87669f1bb707c6138878c46b06f6510"}, + {file = "lxml-5.2.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:5dd1537e7cc06efd81371f5d1a992bd5ab156b2b4f88834ca852de4a8ea523fa"}, + {file = "lxml-5.2.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:9b9ec9c9978b708d488bec36b9e4c94d88fd12ccac3e62134a9d17ddba910ea9"}, + {file = "lxml-5.2.1-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:8e77c69d5892cb5ba71703c4057091e31ccf534bd7f129307a4d084d90d014b8"}, + {file = "lxml-5.2.1-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:a8d5c70e04aac1eda5c829a26d1f75c6e5286c74743133d9f742cda8e53b9c2f"}, + {file = "lxml-5.2.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:c94e75445b00319c1fad60f3c98b09cd63fe1134a8a953dcd48989ef42318534"}, + {file = "lxml-5.2.1-cp311-cp311-win32.whl", hash = "sha256:4951e4f7a5680a2db62f7f4ab2f84617674d36d2d76a729b9a8be4b59b3659be"}, + {file = "lxml-5.2.1-cp311-cp311-win_amd64.whl", hash = "sha256:5c670c0406bdc845b474b680b9a5456c561c65cf366f8db5a60154088c92d102"}, + {file = "lxml-5.2.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:abc25c3cab9ec7fcd299b9bcb3b8d4a1231877e425c650fa1c7576c5107ab851"}, + {file = "lxml-5.2.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:6935bbf153f9a965f1e07c2649c0849d29832487c52bb4a5c5066031d8b44fd5"}, + {file = "lxml-5.2.1-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d793bebb202a6000390a5390078e945bbb49855c29c7e4d56a85901326c3b5d9"}, + {file = "lxml-5.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:afd5562927cdef7c4f5550374acbc117fd4ecc05b5007bdfa57cc5355864e0a4"}, + {file = "lxml-5.2.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0e7259016bc4345a31af861fdce942b77c99049d6c2107ca07dc2bba2435c1d9"}, + {file = "lxml-5.2.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:530e7c04f72002d2f334d5257c8a51bf409db0316feee7c87e4385043be136af"}, + {file = "lxml-5.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:59689a75ba8d7ffca577aefd017d08d659d86ad4585ccc73e43edbfc7476781a"}, + {file = "lxml-5.2.1-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:f9737bf36262046213a28e789cc82d82c6ef19c85a0cf05e75c670a33342ac2c"}, + {file = "lxml-5.2.1-cp312-cp312-manylinux_2_28_ppc64le.whl", hash = "sha256:3a74c4f27167cb95c1d4af1c0b59e88b7f3e0182138db2501c353555f7ec57f4"}, + {file = "lxml-5.2.1-cp312-cp312-manylinux_2_28_s390x.whl", hash = "sha256:68a2610dbe138fa8c5826b3f6d98a7cfc29707b850ddcc3e21910a6fe51f6ca0"}, + {file = "lxml-5.2.1-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:f0a1bc63a465b6d72569a9bba9f2ef0334c4e03958e043da1920299100bc7c08"}, + {file = "lxml-5.2.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:c2d35a1d047efd68027817b32ab1586c1169e60ca02c65d428ae815b593e65d4"}, + {file = "lxml-5.2.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:79bd05260359170f78b181b59ce871673ed01ba048deef4bf49a36ab3e72e80b"}, + {file = "lxml-5.2.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:865bad62df277c04beed9478fe665b9ef63eb28fe026d5dedcb89b537d2e2ea6"}, + {file = "lxml-5.2.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:44f6c7caff88d988db017b9b0e4ab04934f11e3e72d478031efc7edcac6c622f"}, + {file = "lxml-5.2.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:71e97313406ccf55d32cc98a533ee05c61e15d11b99215b237346171c179c0b0"}, + {file = "lxml-5.2.1-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:057cdc6b86ab732cf361f8b4d8af87cf195a1f6dc5b0ff3de2dced242c2015e0"}, + {file = "lxml-5.2.1-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:f3bbbc998d42f8e561f347e798b85513ba4da324c2b3f9b7969e9c45b10f6169"}, + {file = "lxml-5.2.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:491755202eb21a5e350dae00c6d9a17247769c64dcf62d8c788b5c135e179dc4"}, + {file = "lxml-5.2.1-cp312-cp312-win32.whl", hash = "sha256:8de8f9d6caa7f25b204fc861718815d41cbcf27ee8f028c89c882a0cf4ae4134"}, + {file = "lxml-5.2.1-cp312-cp312-win_amd64.whl", hash = "sha256:f2a9efc53d5b714b8df2b4b3e992accf8ce5bbdfe544d74d5c6766c9e1146a3a"}, + {file = "lxml-5.2.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:70a9768e1b9d79edca17890175ba915654ee1725975d69ab64813dd785a2bd5c"}, + {file = "lxml-5.2.1-cp36-cp36m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c38d7b9a690b090de999835f0443d8aa93ce5f2064035dfc48f27f02b4afc3d0"}, + {file = "lxml-5.2.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5670fb70a828663cc37552a2a85bf2ac38475572b0e9b91283dc09efb52c41d1"}, + {file = "lxml-5.2.1-cp36-cp36m-manylinux_2_28_x86_64.whl", hash = "sha256:958244ad566c3ffc385f47dddde4145088a0ab893504b54b52c041987a8c1863"}, + {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:2a66bf12fbd4666dd023b6f51223aed3d9f3b40fef06ce404cb75bafd3d89536"}, + {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_1_ppc64le.whl", hash = "sha256:9123716666e25b7b71c4e1789ec829ed18663152008b58544d95b008ed9e21e9"}, + {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_1_s390x.whl", hash = "sha256:0c3f67e2aeda739d1cc0b1102c9a9129f7dc83901226cc24dd72ba275ced4218"}, + {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:5d5792e9b3fb8d16a19f46aa8208987cfeafe082363ee2745ea8b643d9cc5b45"}, + {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_2_aarch64.whl", hash = "sha256:88e22fc0a6684337d25c994381ed8a1580a6f5ebebd5ad41f89f663ff4ec2885"}, + {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_2_ppc64le.whl", hash = "sha256:21c2e6b09565ba5b45ae161b438e033a86ad1736b8c838c766146eff8ceffff9"}, + {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_2_s390x.whl", hash = "sha256:afbbdb120d1e78d2ba8064a68058001b871154cc57787031b645c9142b937a62"}, + {file = "lxml-5.2.1-cp36-cp36m-musllinux_1_2_x86_64.whl", hash = "sha256:627402ad8dea044dde2eccde4370560a2b750ef894c9578e1d4f8ffd54000461"}, + {file = "lxml-5.2.1-cp36-cp36m-win32.whl", hash = "sha256:e89580a581bf478d8dcb97d9cd011d567768e8bc4095f8557b21c4d4c5fea7d0"}, + {file = "lxml-5.2.1-cp36-cp36m-win_amd64.whl", hash = "sha256:59565f10607c244bc4c05c0c5fa0c190c990996e0c719d05deec7030c2aa8289"}, + {file = "lxml-5.2.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:857500f88b17a6479202ff5fe5f580fc3404922cd02ab3716197adf1ef628029"}, + {file = "lxml-5.2.1-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:56c22432809085b3f3ae04e6e7bdd36883d7258fcd90e53ba7b2e463efc7a6af"}, + {file = "lxml-5.2.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a55ee573116ba208932e2d1a037cc4b10d2c1cb264ced2184d00b18ce585b2c0"}, + {file = "lxml-5.2.1-cp37-cp37m-manylinux_2_28_x86_64.whl", hash = "sha256:6cf58416653c5901e12624e4013708b6e11142956e7f35e7a83f1ab02f3fe456"}, + {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:64c2baa7774bc22dd4474248ba16fe1a7f611c13ac6123408694d4cc93d66dbd"}, + {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:74b28c6334cca4dd704e8004cba1955af0b778cf449142e581e404bd211fb619"}, + {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:7221d49259aa1e5a8f00d3d28b1e0b76031655ca74bb287123ef56c3db92f213"}, + {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:3dbe858ee582cbb2c6294dc85f55b5f19c918c2597855e950f34b660f1a5ede6"}, + {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_2_aarch64.whl", hash = "sha256:04ab5415bf6c86e0518d57240a96c4d1fcfc3cb370bb2ac2a732b67f579e5a04"}, + {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_2_ppc64le.whl", hash = "sha256:6ab833e4735a7e5533711a6ea2df26459b96f9eec36d23f74cafe03631647c41"}, + {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_2_s390x.whl", hash = "sha256:f443cdef978430887ed55112b491f670bba6462cea7a7742ff8f14b7abb98d75"}, + {file = "lxml-5.2.1-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:9e2addd2d1866fe112bc6f80117bcc6bc25191c5ed1bfbcf9f1386a884252ae8"}, + {file = "lxml-5.2.1-cp37-cp37m-win32.whl", hash = "sha256:f51969bac61441fd31f028d7b3b45962f3ecebf691a510495e5d2cd8c8092dbd"}, + {file = "lxml-5.2.1-cp37-cp37m-win_amd64.whl", hash = "sha256:b0b58fbfa1bf7367dde8a557994e3b1637294be6cf2169810375caf8571a085c"}, + {file = "lxml-5.2.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:3e183c6e3298a2ed5af9d7a356ea823bccaab4ec2349dc9ed83999fd289d14d5"}, + {file = "lxml-5.2.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:804f74efe22b6a227306dd890eecc4f8c59ff25ca35f1f14e7482bbce96ef10b"}, + {file = "lxml-5.2.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:08802f0c56ed150cc6885ae0788a321b73505d2263ee56dad84d200cab11c07a"}, + {file = "lxml-5.2.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0f8c09ed18ecb4ebf23e02b8e7a22a05d6411911e6fabef3a36e4f371f4f2585"}, + {file = "lxml-5.2.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e3d30321949861404323c50aebeb1943461a67cd51d4200ab02babc58bd06a86"}, + {file = "lxml-5.2.1-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:b560e3aa4b1d49e0e6c847d72665384db35b2f5d45f8e6a5c0072e0283430533"}, + {file = "lxml-5.2.1-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:058a1308914f20784c9f4674036527e7c04f7be6fb60f5d61353545aa7fcb739"}, + {file = "lxml-5.2.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:adfb84ca6b87e06bc6b146dc7da7623395db1e31621c4785ad0658c5028b37d7"}, + {file = "lxml-5.2.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:417d14450f06d51f363e41cace6488519038f940676ce9664b34ebf5653433a5"}, + {file = "lxml-5.2.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:a2dfe7e2473f9b59496247aad6e23b405ddf2e12ef0765677b0081c02d6c2c0b"}, + {file = "lxml-5.2.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:bf2e2458345d9bffb0d9ec16557d8858c9c88d2d11fed53998512504cd9df49b"}, + {file = "lxml-5.2.1-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:58278b29cb89f3e43ff3e0c756abbd1518f3ee6adad9e35b51fb101c1c1daaec"}, + {file = "lxml-5.2.1-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:64641a6068a16201366476731301441ce93457eb8452056f570133a6ceb15fca"}, + {file = "lxml-5.2.1-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:78bfa756eab503673991bdcf464917ef7845a964903d3302c5f68417ecdc948c"}, + {file = "lxml-5.2.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:11a04306fcba10cd9637e669fd73aa274c1c09ca64af79c041aa820ea992b637"}, + {file = "lxml-5.2.1-cp38-cp38-win32.whl", hash = "sha256:66bc5eb8a323ed9894f8fa0ee6cb3e3fb2403d99aee635078fd19a8bc7a5a5da"}, + {file = "lxml-5.2.1-cp38-cp38-win_amd64.whl", hash = "sha256:9676bfc686fa6a3fa10cd4ae6b76cae8be26eb5ec6811d2a325636c460da1806"}, + {file = "lxml-5.2.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cf22b41fdae514ee2f1691b6c3cdeae666d8b7fa9434de445f12bbeee0cf48dd"}, + {file = "lxml-5.2.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:ec42088248c596dbd61d4ae8a5b004f97a4d91a9fd286f632e42e60b706718d7"}, + {file = "lxml-5.2.1-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cd53553ddad4a9c2f1f022756ae64abe16da1feb497edf4d9f87f99ec7cf86bd"}, + {file = "lxml-5.2.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:feaa45c0eae424d3e90d78823f3828e7dc42a42f21ed420db98da2c4ecf0a2cb"}, + {file = "lxml-5.2.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ddc678fb4c7e30cf830a2b5a8d869538bc55b28d6c68544d09c7d0d8f17694dc"}, + {file = "lxml-5.2.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:853e074d4931dbcba7480d4dcab23d5c56bd9607f92825ab80ee2bd916edea53"}, + {file = "lxml-5.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cc4691d60512798304acb9207987e7b2b7c44627ea88b9d77489bbe3e6cc3bd4"}, + {file = "lxml-5.2.1-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:beb72935a941965c52990f3a32d7f07ce869fe21c6af8b34bf6a277b33a345d3"}, + {file = "lxml-5.2.1-cp39-cp39-manylinux_2_28_ppc64le.whl", hash = "sha256:6588c459c5627fefa30139be4d2e28a2c2a1d0d1c265aad2ba1935a7863a4913"}, + {file = "lxml-5.2.1-cp39-cp39-manylinux_2_28_s390x.whl", hash = "sha256:588008b8497667f1ddca7c99f2f85ce8511f8f7871b4a06ceede68ab62dff64b"}, + {file = "lxml-5.2.1-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:b6787b643356111dfd4032b5bffe26d2f8331556ecb79e15dacb9275da02866e"}, + {file = "lxml-5.2.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:7c17b64b0a6ef4e5affae6a3724010a7a66bda48a62cfe0674dabd46642e8b54"}, + {file = "lxml-5.2.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:27aa20d45c2e0b8cd05da6d4759649170e8dfc4f4e5ef33a34d06f2d79075d57"}, + {file = "lxml-5.2.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:d4f2cc7060dc3646632d7f15fe68e2fa98f58e35dd5666cd525f3b35d3fed7f8"}, + {file = "lxml-5.2.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ff46d772d5f6f73564979cd77a4fffe55c916a05f3cb70e7c9c0590059fb29ef"}, + {file = "lxml-5.2.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:96323338e6c14e958d775700ec8a88346014a85e5de73ac7967db0367582049b"}, + {file = "lxml-5.2.1-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:52421b41ac99e9d91934e4d0d0fe7da9f02bfa7536bb4431b4c05c906c8c6919"}, + {file = "lxml-5.2.1-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:7a7efd5b6d3e30d81ec68ab8a88252d7c7c6f13aaa875009fe3097eb4e30b84c"}, + {file = "lxml-5.2.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:0ed777c1e8c99b63037b91f9d73a6aad20fd035d77ac84afcc205225f8f41188"}, + {file = "lxml-5.2.1-cp39-cp39-win32.whl", hash = "sha256:644df54d729ef810dcd0f7732e50e5ad1bd0a135278ed8d6bcb06f33b6b6f708"}, + {file = "lxml-5.2.1-cp39-cp39-win_amd64.whl", hash = "sha256:9ca66b8e90daca431b7ca1408cae085d025326570e57749695d6a01454790e95"}, + {file = "lxml-5.2.1-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:9b0ff53900566bc6325ecde9181d89afadc59c5ffa39bddf084aaedfe3b06a11"}, + {file = "lxml-5.2.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fd6037392f2d57793ab98d9e26798f44b8b4da2f2464388588f48ac52c489ea1"}, + {file = "lxml-5.2.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8b9c07e7a45bb64e21df4b6aa623cb8ba214dfb47d2027d90eac197329bb5e94"}, + {file = "lxml-5.2.1-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:3249cc2989d9090eeac5467e50e9ec2d40704fea9ab72f36b034ea34ee65ca98"}, + {file = "lxml-5.2.1-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:f42038016852ae51b4088b2862126535cc4fc85802bfe30dea3500fdfaf1864e"}, + {file = "lxml-5.2.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:533658f8fbf056b70e434dff7e7aa611bcacb33e01f75de7f821810e48d1bb66"}, + {file = "lxml-5.2.1-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:622020d4521e22fb371e15f580d153134bfb68d6a429d1342a25f051ec72df1c"}, + {file = "lxml-5.2.1-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:efa7b51824aa0ee957ccd5a741c73e6851de55f40d807f08069eb4c5a26b2baa"}, + {file = "lxml-5.2.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9c6ad0fbf105f6bcc9300c00010a2ffa44ea6f555df1a2ad95c88f5656104817"}, + {file = "lxml-5.2.1-pp37-pypy37_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:e233db59c8f76630c512ab4a4daf5a5986da5c3d5b44b8e9fc742f2a24dbd460"}, + {file = "lxml-5.2.1-pp37-pypy37_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:6a014510830df1475176466b6087fc0c08b47a36714823e58d8b8d7709132a96"}, + {file = "lxml-5.2.1-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:d38c8f50ecf57f0463399569aa388b232cf1a2ffb8f0a9a5412d0db57e054860"}, + {file = "lxml-5.2.1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:5aea8212fb823e006b995c4dda533edcf98a893d941f173f6c9506126188860d"}, + {file = "lxml-5.2.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ff097ae562e637409b429a7ac958a20aab237a0378c42dabaa1e3abf2f896e5f"}, + {file = "lxml-5.2.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0f5d65c39f16717a47c36c756af0fb36144069c4718824b7533f803ecdf91138"}, + {file = "lxml-5.2.1-pp38-pypy38_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:3d0c3dd24bb4605439bf91068598d00c6370684f8de4a67c2992683f6c309d6b"}, + {file = "lxml-5.2.1-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:e32be23d538753a8adb6c85bd539f5fd3b15cb987404327c569dfc5fd8366e85"}, + {file = "lxml-5.2.1-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:cc518cea79fd1e2f6c90baafa28906d4309d24f3a63e801d855e7424c5b34144"}, + {file = "lxml-5.2.1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:a0af35bd8ebf84888373630f73f24e86bf016642fb8576fba49d3d6b560b7cbc"}, + {file = "lxml-5.2.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f8aca2e3a72f37bfc7b14ba96d4056244001ddcc18382bd0daa087fd2e68a354"}, + {file = "lxml-5.2.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5ca1e8188b26a819387b29c3895c47a5e618708fe6f787f3b1a471de2c4a94d9"}, + {file = "lxml-5.2.1-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:c8ba129e6d3b0136a0f50345b2cb3db53f6bda5dd8c7f5d83fbccba97fb5dcb5"}, + {file = "lxml-5.2.1-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:e998e304036198b4f6914e6a1e2b6f925208a20e2042563d9734881150c6c246"}, + {file = "lxml-5.2.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:d3be9b2076112e51b323bdf6d5a7f8a798de55fb8d95fcb64bd179460cdc0704"}, + {file = "lxml-5.2.1.tar.gz", hash = "sha256:3f7765e69bbce0906a7c74d5fe46d2c7a7596147318dbc08e4a2431f3060e306"}, ] [package.extras] cssselect = ["cssselect (>=0.7)"] +html-clean = ["lxml-html-clean"] html5 = ["html5lib"] htmlsoup = ["BeautifulSoup4"] -source = ["Cython (>=3.0.7)"] +source = ["Cython (>=3.0.10)"] [[package]] name = "markdown" -version = "3.5.2" +version = "3.6" description = "Python implementation of John Gruber's Markdown." category = "dev" optional = false python-versions = ">=3.8" files = [ - {file = "Markdown-3.5.2-py3-none-any.whl", hash = "sha256:d43323865d89fc0cb9b20c75fc8ad313af307cc087e84b657d9eec768eddeadd"}, - {file = "Markdown-3.5.2.tar.gz", hash = "sha256:e1ac7b3dc550ee80e602e71c1d168002f062e49f1b11e26a36264dafd4df2ef8"}, + {file = "Markdown-3.6-py3-none-any.whl", hash = "sha256:48f276f4d8cfb8ce6527c8f79e2ee29708508bf4d40aa410fbc3b4ee832c850f"}, + {file = "Markdown-3.6.tar.gz", hash = "sha256:ed4f41f6daecbeeb96e576ce414c41d2d876daa9a16cb35fa8ed8c2ddfad0224"}, ] [package.dependencies] @@ -1830,6 +1929,30 @@ click = "*" [package.extras] tests = ["coverage", "pytest"] +[[package]] +name = "more-itertools" +version = "10.2.0" +description = "More routines for operating on iterables, beyond itertools" +category = "dev" +optional = false +python-versions = ">=3.8" +files = [ + {file = "more-itertools-10.2.0.tar.gz", hash = "sha256:8fccb480c43d3e99a00087634c06dd02b0d50fbf088b380de5a41a015ec239e1"}, + {file = "more_itertools-10.2.0-py3-none-any.whl", hash = "sha256:686b06abe565edfab151cb8fd385a05651e1fdf8f0a14191e4439283421f8684"}, +] + +[[package]] +name = "multimethod" +version = "1.10" +description = "Multiple argument dispatching." +category = "dev" +optional = false +python-versions = ">=3.8" +files = [ + {file = "multimethod-1.10-py3-none-any.whl", hash = "sha256:afd84da9c3d0445c84f827e4d63ad42d17c6d29b122427c6dee9032ac2d2a0d4"}, + {file = "multimethod-1.10.tar.gz", hash = "sha256:daa45af3fe257f73abb69673fd54ddeaf31df0eb7363ad6e1251b7c9b192d8c5"}, +] + [[package]] name = "mypy-extensions" version = "1.0.0" @@ -1844,14 +1967,14 @@ files = [ [[package]] name = "ndex2" -version = "3.7.0" +version = "3.8.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"}, + {file = "ndex2-3.8.0-py2.py3-none-any.whl", hash = "sha256:c00e4748489f3f523df2524917b7be921c590fffd8a860a5077e1504f47afcc2"}, + {file = "ndex2-3.8.0.tar.gz", hash = "sha256:9f4d7f4b9594664191fba5c6512e315ed47b13bc416df5769802f87a7c22d1c8"}, ] [package.dependencies] @@ -1866,13 +1989,13 @@ urllib3 = ">=1.16" [[package]] name = "neo4j" -version = "5.17.0" +version = "5.19.0" description = "Neo4j Bolt driver for Python" category = "main" optional = false python-versions = ">=3.7" files = [ - {file = "neo4j-5.17.0.tar.gz", hash = "sha256:dcd7150a0c3834a89a6e27505e614f340376f31c97c48ba60dc70a220ee85e3b"}, + {file = "neo4j-5.19.0.tar.gz", hash = "sha256:23704f604214174f3b7d15a38653a1462809986019dfdaf773ff7ca4e1b9e2de"}, ] [package.dependencies] @@ -1919,60 +2042,60 @@ docopt = ">=0.6.2" [[package]] name = "numpy" -version = "1.26.3" +version = "1.26.4" description = "Fundamental package for array computing in Python" category = "dev" optional = false 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"}, + {file = "numpy-1.26.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:9ff0f4f29c51e2803569d7a51c2304de5554655a60c5d776e35b4a41413830d0"}, + {file = "numpy-1.26.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2e4ee3380d6de9c9ec04745830fd9e2eccb3e6cf790d39d7b98ffd19b0dd754a"}, + {file = "numpy-1.26.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d209d8969599b27ad20994c8e41936ee0964e6da07478d6c35016bc386b66ad4"}, + {file = "numpy-1.26.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ffa75af20b44f8dba823498024771d5ac50620e6915abac414251bd971b4529f"}, + {file = "numpy-1.26.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:62b8e4b1e28009ef2846b4c7852046736bab361f7aeadeb6a5b89ebec3c7055a"}, + {file = "numpy-1.26.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a4abb4f9001ad2858e7ac189089c42178fcce737e4169dc61321660f1a96c7d2"}, + {file = "numpy-1.26.4-cp310-cp310-win32.whl", hash = "sha256:bfe25acf8b437eb2a8b2d49d443800a5f18508cd811fea3181723922a8a82b07"}, + {file = "numpy-1.26.4-cp310-cp310-win_amd64.whl", hash = "sha256:b97fe8060236edf3662adfc2c633f56a08ae30560c56310562cb4f95500022d5"}, + {file = "numpy-1.26.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:4c66707fabe114439db9068ee468c26bbdf909cac0fb58686a42a24de1760c71"}, + {file = "numpy-1.26.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:edd8b5fe47dab091176d21bb6de568acdd906d1887a4584a15a9a96a1dca06ef"}, + {file = "numpy-1.26.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7ab55401287bfec946ced39700c053796e7cc0e3acbef09993a9ad2adba6ca6e"}, + {file = "numpy-1.26.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:666dbfb6ec68962c033a450943ded891bed2d54e6755e35e5835d63f4f6931d5"}, + {file = "numpy-1.26.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:96ff0b2ad353d8f990b63294c8986f1ec3cb19d749234014f4e7eb0112ceba5a"}, + {file = "numpy-1.26.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:60dedbb91afcbfdc9bc0b1f3f402804070deed7392c23eb7a7f07fa857868e8a"}, + {file = "numpy-1.26.4-cp311-cp311-win32.whl", hash = "sha256:1af303d6b2210eb850fcf03064d364652b7120803a0b872f5211f5234b399f20"}, + {file = "numpy-1.26.4-cp311-cp311-win_amd64.whl", hash = "sha256:cd25bcecc4974d09257ffcd1f098ee778f7834c3ad767fe5db785be9a4aa9cb2"}, + {file = "numpy-1.26.4-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:b3ce300f3644fb06443ee2222c2201dd3a89ea6040541412b8fa189341847218"}, + {file = "numpy-1.26.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:03a8c78d01d9781b28a6989f6fa1bb2c4f2d51201cf99d3dd875df6fbd96b23b"}, + {file = "numpy-1.26.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9fad7dcb1aac3c7f0584a5a8133e3a43eeb2fe127f47e3632d43d677c66c102b"}, + {file = "numpy-1.26.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:675d61ffbfa78604709862923189bad94014bef562cc35cf61d3a07bba02a7ed"}, + {file = "numpy-1.26.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ab47dbe5cc8210f55aa58e4805fe224dac469cde56b9f731a4c098b91917159a"}, + {file = "numpy-1.26.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:1dda2e7b4ec9dd512f84935c5f126c8bd8b9f2fc001e9f54af255e8c5f16b0e0"}, + {file = "numpy-1.26.4-cp312-cp312-win32.whl", hash = "sha256:50193e430acfc1346175fcbdaa28ffec49947a06918b7b92130744e81e640110"}, + {file = "numpy-1.26.4-cp312-cp312-win_amd64.whl", hash = "sha256:08beddf13648eb95f8d867350f6a018a4be2e5ad54c8d8caed89ebca558b2818"}, + {file = "numpy-1.26.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:7349ab0fa0c429c82442a27a9673fc802ffdb7c7775fad780226cb234965e53c"}, + {file = "numpy-1.26.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:52b8b60467cd7dd1e9ed082188b4e6bb35aa5cdd01777621a1658910745b90be"}, + {file = "numpy-1.26.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d5241e0a80d808d70546c697135da2c613f30e28251ff8307eb72ba696945764"}, + {file = "numpy-1.26.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f870204a840a60da0b12273ef34f7051e98c3b5961b61b0c2c1be6dfd64fbcd3"}, + {file = "numpy-1.26.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:679b0076f67ecc0138fd2ede3a8fd196dddc2ad3254069bcb9faf9a79b1cebcd"}, + {file = "numpy-1.26.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:47711010ad8555514b434df65f7d7b076bb8261df1ca9bb78f53d3b2db02e95c"}, + {file = "numpy-1.26.4-cp39-cp39-win32.whl", hash = "sha256:a354325ee03388678242a4d7ebcd08b5c727033fcff3b2f536aea978e15ee9e6"}, + {file = "numpy-1.26.4-cp39-cp39-win_amd64.whl", hash = "sha256:3373d5d70a5fe74a2c1bb6d2cfd9609ecf686d47a2d7b1d37a8f3b6bf6003aea"}, + {file = "numpy-1.26.4-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:afedb719a9dcfc7eaf2287b839d8198e06dcd4cb5d276a3df279231138e83d30"}, + {file = "numpy-1.26.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95a7476c59002f2f6c590b9b7b998306fba6a5aa646b1e22ddfeaf8f78c3a29c"}, + {file = "numpy-1.26.4-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:7e50d0a0cc3189f9cb0aeb3a6a6af18c16f59f004b866cd2be1c14b36134a4a0"}, + {file = "numpy-1.26.4.tar.gz", hash = "sha256:2a02aba9ed12e4ac4eb3ea9421c420301a0c6460d9830d74a9df87efa4912010"}, ] [[package]] name = "oaklib" -version = "0.5.25" +version = "0.6.0" 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" +python-versions = "<4.0.0,>=3.9" files = [ - {file = "oaklib-0.5.25-py3-none-any.whl", hash = "sha256:3ec4f72e9abe883c082561e9a93fbda2c51ba0a7970e6bc952e8b51462b095d5"}, - {file = "oaklib-0.5.25.tar.gz", hash = "sha256:e8983a29d6a83a4dfee994dfc5b82069e78c226d007f734eef9d0fee1fde48be"}, + {file = "oaklib-0.6.0-py3-none-any.whl", hash = "sha256:52d2e4a30804dc57eeb08e2d46a18ac65f83883e30462b4cfbceb8086c3d7e97"}, + {file = "oaklib-0.6.0.tar.gz", hash = "sha256:66ac88281fe4001d9fccbabe434f531ca8ffb0d7a2ad716f7eb085fc81ad47fb"}, ] [package.dependencies] @@ -1983,8 +2106,9 @@ click = "*" curies = ">=0.6.6" eutils = ">=0.6.0" funowl = ">=0.2.0" +jsonlines = ">=4.0.0,<5.0.0" kgcl-rdflib = "0.5.0" -kgcl-schema = ">=0.6.0" +kgcl-schema = ">=0.6.5,<0.7.0" linkml-renderer = ">=0.3.0" linkml-runtime = ">=1.5.3" ndex2 = ">=3.5.0,<4.0.0" @@ -1998,15 +2122,16 @@ 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" +sssom = ">=0.4.4,<0.5.0" +tenacity = ">=8.2.3,<9.0.0" [package.extras] gilda = ["gilda (>=1.0.0)", "urllib3 (<2)"] -llm = ["llm"] +llm = ["aiohttp", "llm"] +semsimian = ["semsimian (>=0.2.15)"] [[package]] name = "oauthlib" @@ -2122,99 +2247,125 @@ dev = ["black", "mypy", "pytest"] [[package]] name = "packaging" -version = "23.2" +version = "24.0" description = "Core utilities for Python packages" category = "main" optional = false python-versions = ">=3.7" files = [ - {file = "packaging-23.2-py3-none-any.whl", hash = "sha256:8c491190033a9af7e1d931d0b5dacc2ef47509b34dd0de67ed209b5203fc88c7"}, - {file = "packaging-23.2.tar.gz", hash = "sha256:048fb0e9405036518eaaf48a55953c750c11e1a1b68e0dd1a9d62ed0c092cfc5"}, + {file = "packaging-24.0-py3-none-any.whl", hash = "sha256:2ddfb553fdf02fb784c234c7ba6ccc288296ceabec964ad2eae3777778130bc5"}, + {file = "packaging-24.0.tar.gz", hash = "sha256:eb82c5e3e56209074766e6885bb04b8c38a0c015d0a30036ebe7ece34c9989e9"}, ] [[package]] name = "pandas" -version = "1.5.3" +version = "2.2.1" description = "Powerful data structures for data analysis, time series, and statistics" category = "dev" optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" 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"}, + {file = "pandas-2.2.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:8df8612be9cd1c7797c93e1c5df861b2ddda0b48b08f2c3eaa0702cf88fb5f88"}, + {file = "pandas-2.2.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:0f573ab277252ed9aaf38240f3b54cfc90fff8e5cab70411ee1d03f5d51f3944"}, + {file = "pandas-2.2.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f02a3a6c83df4026e55b63c1f06476c9aa3ed6af3d89b4f04ea656ccdaaaa359"}, + {file = "pandas-2.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c38ce92cb22a4bea4e3929429aa1067a454dcc9c335799af93ba9be21b6beb51"}, + {file = "pandas-2.2.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:c2ce852e1cf2509a69e98358e8458775f89599566ac3775e70419b98615f4b06"}, + {file = "pandas-2.2.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:53680dc9b2519cbf609c62db3ed7c0b499077c7fefda564e330286e619ff0dd9"}, + {file = "pandas-2.2.1-cp310-cp310-win_amd64.whl", hash = "sha256:94e714a1cca63e4f5939cdce5f29ba8d415d85166be3441165edd427dc9f6bc0"}, + {file = "pandas-2.2.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:f821213d48f4ab353d20ebc24e4faf94ba40d76680642fb7ce2ea31a3ad94f9b"}, + {file = "pandas-2.2.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c70e00c2d894cb230e5c15e4b1e1e6b2b478e09cf27cc593a11ef955b9ecc81a"}, + {file = "pandas-2.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e97fbb5387c69209f134893abc788a6486dbf2f9e511070ca05eed4b930b1b02"}, + {file = "pandas-2.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:101d0eb9c5361aa0146f500773395a03839a5e6ecde4d4b6ced88b7e5a1a6403"}, + {file = "pandas-2.2.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:7d2ed41c319c9fb4fd454fe25372028dfa417aacb9790f68171b2e3f06eae8cd"}, + {file = "pandas-2.2.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:af5d3c00557d657c8773ef9ee702c61dd13b9d7426794c9dfeb1dc4a0bf0ebc7"}, + {file = "pandas-2.2.1-cp311-cp311-win_amd64.whl", hash = "sha256:06cf591dbaefb6da9de8472535b185cba556d0ce2e6ed28e21d919704fef1a9e"}, + {file = "pandas-2.2.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:88ecb5c01bb9ca927ebc4098136038519aa5d66b44671861ffab754cae75102c"}, + {file = "pandas-2.2.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:04f6ec3baec203c13e3f8b139fb0f9f86cd8c0b94603ae3ae8ce9a422e9f5bee"}, + {file = "pandas-2.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a935a90a76c44fe170d01e90a3594beef9e9a6220021acfb26053d01426f7dc2"}, + {file = "pandas-2.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c391f594aae2fd9f679d419e9a4d5ba4bce5bb13f6a989195656e7dc4b95c8f0"}, + {file = "pandas-2.2.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:9d1265545f579edf3f8f0cb6f89f234f5e44ba725a34d86535b1a1d38decbccc"}, + {file = "pandas-2.2.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:11940e9e3056576ac3244baef2fedade891977bcc1cb7e5cc8f8cc7d603edc89"}, + {file = "pandas-2.2.1-cp312-cp312-win_amd64.whl", hash = "sha256:4acf681325ee1c7f950d058b05a820441075b0dd9a2adf5c4835b9bc056bf4fb"}, + {file = "pandas-2.2.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9bd8a40f47080825af4317d0340c656744f2bfdb6819f818e6ba3cd24c0e1397"}, + {file = "pandas-2.2.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:df0c37ebd19e11d089ceba66eba59a168242fc6b7155cba4ffffa6eccdfb8f16"}, + {file = "pandas-2.2.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:739cc70eaf17d57608639e74d63387b0d8594ce02f69e7a0b046f117974b3019"}, + {file = "pandas-2.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f9d3558d263073ed95e46f4650becff0c5e1ffe0fc3a015de3c79283dfbdb3df"}, + {file = "pandas-2.2.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:4aa1d8707812a658debf03824016bf5ea0d516afdea29b7dc14cf687bc4d4ec6"}, + {file = "pandas-2.2.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:76f27a809cda87e07f192f001d11adc2b930e93a2b0c4a236fde5429527423be"}, + {file = "pandas-2.2.1-cp39-cp39-win_amd64.whl", hash = "sha256:1ba21b1d5c0e43416218db63037dbe1a01fc101dc6e6024bcad08123e48004ab"}, + {file = "pandas-2.2.1.tar.gz", hash = "sha256:0ab90f87093c13f3e8fa45b48ba9f39181046e8f3317d3aadb2fffbb1b978572"}, ] [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\""}, + {version = ">=1.22.4,<2", markers = "python_version < \"3.11\""}, + {version = ">=1.23.2,<2", markers = "python_version == \"3.11\""}, + {version = ">=1.26.0,<2", markers = "python_version >= \"3.12\""}, ] -python-dateutil = ">=2.8.1" +python-dateutil = ">=2.8.2" pytz = ">=2020.1" +tzdata = ">=2022.7" [package.extras] -test = ["hypothesis (>=5.5.3)", "pytest (>=6.0)", "pytest-xdist (>=1.31)"] +all = ["PyQt5 (>=5.15.9)", "SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "adbc-driver-sqlite (>=0.8.0)", "beautifulsoup4 (>=4.11.2)", "bottleneck (>=1.3.6)", "dataframe-api-compat (>=0.1.7)", "fastparquet (>=2022.12.0)", "fsspec (>=2022.11.0)", "gcsfs (>=2022.11.0)", "html5lib (>=1.1)", "hypothesis (>=6.46.1)", "jinja2 (>=3.1.2)", "lxml (>=4.9.2)", "matplotlib (>=3.6.3)", "numba (>=0.56.4)", "numexpr (>=2.8.4)", "odfpy (>=1.4.1)", "openpyxl (>=3.1.0)", "pandas-gbq (>=0.19.0)", "psycopg2 (>=2.9.6)", "pyarrow (>=10.0.1)", "pymysql (>=1.0.2)", "pyreadstat (>=1.2.0)", "pytest (>=7.3.2)", "pytest-xdist (>=2.2.0)", "python-calamine (>=0.1.7)", "pyxlsb (>=1.0.10)", "qtpy (>=2.3.0)", "s3fs (>=2022.11.0)", "scipy (>=1.10.0)", "tables (>=3.8.0)", "tabulate (>=0.9.0)", "xarray (>=2022.12.0)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.5)", "zstandard (>=0.19.0)"] +aws = ["s3fs (>=2022.11.0)"] +clipboard = ["PyQt5 (>=5.15.9)", "qtpy (>=2.3.0)"] +compression = ["zstandard (>=0.19.0)"] +computation = ["scipy (>=1.10.0)", "xarray (>=2022.12.0)"] +consortium-standard = ["dataframe-api-compat (>=0.1.7)"] +excel = ["odfpy (>=1.4.1)", "openpyxl (>=3.1.0)", "python-calamine (>=0.1.7)", "pyxlsb (>=1.0.10)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.5)"] +feather = ["pyarrow (>=10.0.1)"] +fss = ["fsspec (>=2022.11.0)"] +gcp = ["gcsfs (>=2022.11.0)", "pandas-gbq (>=0.19.0)"] +hdf5 = ["tables (>=3.8.0)"] +html = ["beautifulsoup4 (>=4.11.2)", "html5lib (>=1.1)", "lxml (>=4.9.2)"] +mysql = ["SQLAlchemy (>=2.0.0)", "pymysql (>=1.0.2)"] +output-formatting = ["jinja2 (>=3.1.2)", "tabulate (>=0.9.0)"] +parquet = ["pyarrow (>=10.0.1)"] +performance = ["bottleneck (>=1.3.6)", "numba (>=0.56.4)", "numexpr (>=2.8.4)"] +plot = ["matplotlib (>=3.6.3)"] +postgresql = ["SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "psycopg2 (>=2.9.6)"] +pyarrow = ["pyarrow (>=10.0.1)"] +spss = ["pyreadstat (>=1.2.0)"] +sql-other = ["SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "adbc-driver-sqlite (>=0.8.0)"] +test = ["hypothesis (>=6.46.1)", "pytest (>=7.3.2)", "pytest-xdist (>=2.2.0)"] +xml = ["lxml (>=4.9.2)"] [[package]] name = "pandera" -version = "0.12.0" +version = "0.18.3" description = "A light-weight and flexible data validation and testing tool for statistical data objects." category = "dev" optional = false -python-versions = ">=3.8" +python-versions = ">=3.7" files = [ - {file = "pandera-0.12.0-py3-none-any.whl", hash = "sha256:c47110979c0ddf15647563b2ffde0db3e728eb833e78e7801080004a08d78955"}, - {file = "pandera-0.12.0.tar.gz", hash = "sha256:d3255e52b7bbe7a4ba0182b80725bdd71efe0658d06e3e5d1840047d79578535"}, + {file = "pandera-0.18.3-py3-none-any.whl", hash = "sha256:376faf746db57517f7fd85f234fa193e34266e7bcd1781e5c5912befbc180b98"}, + {file = "pandera-0.18.3.tar.gz", hash = "sha256:47dd2e10ed7d2a2bc9cfd154b76b8bcd065a9bf1413d00de902d31c7afeec014"}, ] [package.dependencies] +multimethod = "<=1.10.0" numpy = ">=1.19.0" packaging = ">=20.0" pandas = ">=1.2.0" -pyarrow = "*" pydantic = "*" +typeguard = ">=3.0.2" 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"] +all = ["black", "dask", "fastapi", "frictionless (<=4.40.8)", "geopandas", "hypothesis (>=6.92.7)", "modin", "pandas-stubs", "pyspark (>=3.2.0)", "pyyaml (>=5.1)", "ray", "scipy", "shapely"] dask = ["dask"] fastapi = ["fastapi"] geopandas = ["geopandas", "shapely"] hypotheses = ["scipy"] -io = ["black", "frictionless", "pyyaml (>=5.1)"] -modin = ["dask", "modin", "ray (<=1.7.0)"] +io = ["black", "frictionless (<=4.40.8)", "pyyaml (>=5.1)"] +modin = ["dask", "modin", "ray"] modin-dask = ["dask", "modin"] -modin-ray = ["modin", "ray (<=1.7.0)"] -mypy = ["pandas-stubs (<=1.4.3.220807)"] +modin-ray = ["modin", "ray"] +mypy = ["pandas-stubs"] pyspark = ["pyspark (>=3.2.0)"] -strategies = ["hypothesis (>=5.41.1)"] +strategies = ["hypothesis (>=6.92.7)"] [[package]] name = "pansql" @@ -2288,7 +2439,7 @@ xarray = ["xarray"] name = "platformdirs" version = "4.2.0" description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." -category = "main" +category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -2348,37 +2499,30 @@ requests = ">=2.28.1,<3.0.0" [[package]] name = "prefixmaps" -version = "0.2.1" +version = "0.2.3" description = "A python library for retrieving semantic prefix maps" category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "<4.0,>=3.8" files = [ - {file = "prefixmaps-0.2.1-py3-none-any.whl", hash = "sha256:0d204caeb4c368cb7a981de98117665fd8885ba76f058714f27f5963e620d5a1"}, - {file = "prefixmaps-0.2.1.tar.gz", hash = "sha256:8aed88739f900e6c0df0ada061b90223c79c29ca074f5ae6d3de423aef8fa3cf"}, + {file = "prefixmaps-0.2.3-py3-none-any.whl", hash = "sha256:342f13b74c056f5b99bcd55e79710a7cb53a2908a2a424c68d830d8d68bb9491"}, + {file = "prefixmaps-0.2.3.tar.gz", hash = "sha256:b63df4428672e89dc39a7f02816e47b1e8d74653dd3308a69465d6694fad7618"}, ] [package.dependencies] -click = ">=8.1.3" curies = ">=0.5.3" -pydantic = ">=2.5,<3.0" pyyaml = ">=5.3.1" -tox = ">=4.11.3,<5.0.0" - -[package.extras] -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" +version = "2.5.6" 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"}, + {file = "pronto-2.5.6-py2.py3-none-any.whl", hash = "sha256:b9043569418c473224c0be3b7955c56a76a99580670ee5647ca7df4d71afaf0c"}, + {file = "pronto-2.5.6.tar.gz", hash = "sha256:eacdaa9b629042d1a07c59470241576c111751229ac052a05bfce8180df33bf8"}, ] [package.dependencies] @@ -2387,25 +2531,43 @@ fastobo = ">=0.12.2,<0.13.0" networkx = ">=2.3,<4.0" python-dateutil = ">=2.8,<3.0" +[[package]] +name = "proto-plus" +version = "1.23.0" +description = "Beautiful, Pythonic protocol buffers." +category = "dev" +optional = false +python-versions = ">=3.6" +files = [ + {file = "proto-plus-1.23.0.tar.gz", hash = "sha256:89075171ef11988b3fa157f5dbd8b9cf09d65fffee97e29ce403cd8defba19d2"}, + {file = "proto_plus-1.23.0-py3-none-any.whl", hash = "sha256:a829c79e619e1cf632de091013a4173deed13a55f326ef84f05af6f50ff4c82c"}, +] + +[package.dependencies] +protobuf = ">=3.19.0,<5.0.0dev" + +[package.extras] +testing = ["google-api-core[grpc] (>=1.31.5)"] + [[package]] name = "protobuf" -version = "4.25.2" +version = "4.25.3" description = "" category = "dev" optional = false python-versions = ">=3.8" files = [ - {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"}, + {file = "protobuf-4.25.3-cp310-abi3-win32.whl", hash = "sha256:d4198877797a83cbfe9bffa3803602bbe1625dc30d8a097365dbc762e5790faa"}, + {file = "protobuf-4.25.3-cp310-abi3-win_amd64.whl", hash = "sha256:209ba4cc916bab46f64e56b85b090607a676f66b473e6b762e6f1d9d591eb2e8"}, + {file = "protobuf-4.25.3-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:f1279ab38ecbfae7e456a108c5c0681e4956d5b1090027c1de0f934dfdb4b35c"}, + {file = "protobuf-4.25.3-cp37-abi3-manylinux2014_aarch64.whl", hash = "sha256:e7cb0ae90dd83727f0c0718634ed56837bfeeee29a5f82a7514c03ee1364c019"}, + {file = "protobuf-4.25.3-cp37-abi3-manylinux2014_x86_64.whl", hash = "sha256:7c8daa26095f82482307bc717364e7c13f4f1c99659be82890dcfc215194554d"}, + {file = "protobuf-4.25.3-cp38-cp38-win32.whl", hash = "sha256:f4f118245c4a087776e0a8408be33cf09f6c547442c00395fbfb116fac2f8ac2"}, + {file = "protobuf-4.25.3-cp38-cp38-win_amd64.whl", hash = "sha256:c053062984e61144385022e53678fbded7aea14ebb3e0305ae3592fb219ccfa4"}, + {file = "protobuf-4.25.3-cp39-cp39-win32.whl", hash = "sha256:19b270aeaa0099f16d3ca02628546b8baefe2955bbe23224aaf856134eccf1e4"}, + {file = "protobuf-4.25.3-cp39-cp39-win_amd64.whl", hash = "sha256:e3c97a1555fd6388f857770ff8b9703083de6bf1f9274a002a332d65fbb56c8c"}, + {file = "protobuf-4.25.3-py3-none-any.whl", hash = "sha256:f0700d54bcf45424477e46a9f0944155b46fb0639d69728739c0e47bab83f2b9"}, + {file = "protobuf-4.25.3.tar.gz", hash = "sha256:25b5d0b42fd000320bd7830b349e3b696435f3b329810427a6bcce6a5492cc5c"}, ] [[package]] @@ -2490,97 +2652,48 @@ files = [ {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" +version = "0.6.0" description = "Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208)" category = "dev" optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" +python-versions = ">=3.8" files = [ - {file = "pyasn1-0.5.1-py2.py3-none-any.whl", hash = "sha256:4439847c58d40b1d0a573d07e3856e95333f1976294494c325775aeca506eb58"}, - {file = "pyasn1-0.5.1.tar.gz", hash = "sha256:6d391a96e59b23130a5cfa74d6fd7f388dbbe26cc8f1edf39fdddf08d9d6676c"}, + {file = "pyasn1-0.6.0-py2.py3-none-any.whl", hash = "sha256:cca4bb0f2df5504f02f6f8a775b6e416ff9b0b3b16f7ee80b5a3153d9b804473"}, + {file = "pyasn1-0.6.0.tar.gz", hash = "sha256:3a35ab2c4b5ef98e17dfdec8ab074046fbda76e281c5a706ccd82328cfc8f64c"}, ] [[package]] name = "pyasn1-modules" -version = "0.3.0" +version = "0.4.0" description = "A collection of ASN.1-based protocols modules" category = "dev" optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" +python-versions = ">=3.8" files = [ - {file = "pyasn1_modules-0.3.0-py2.py3-none-any.whl", hash = "sha256:d3ccd6ed470d9ffbc716be08bd90efbd44d0734bc9303818f7336070984a162d"}, - {file = "pyasn1_modules-0.3.0.tar.gz", hash = "sha256:5bd01446b736eb9d31512a30d46c1ac3395d676c6f3cafa4c03eb54b9925631c"}, + {file = "pyasn1_modules-0.4.0-py3-none-any.whl", hash = "sha256:be04f15b66c206eed667e0bb5ab27e2b1855ea54a842e5037738099e8ca4ae0b"}, + {file = "pyasn1_modules-0.4.0.tar.gz", hash = "sha256:831dbcea1b177b28c9baddf4c6d1013c24c3accd14a1873fffaa6a2e905f17b6"}, ] [package.dependencies] -pyasn1 = ">=0.4.6,<0.6.0" +pyasn1 = ">=0.4.6,<0.7.0" [[package]] name = "pydantic" -version = "2.6.0" +version = "2.6.4" description = "Data validation using Python type hints" category = "main" optional = false python-versions = ">=3.8" files = [ - {file = "pydantic-2.6.0-py3-none-any.whl", hash = "sha256:1440966574e1b5b99cf75a13bec7b20e3512e8a61b894ae252f56275e2c465ae"}, - {file = "pydantic-2.6.0.tar.gz", hash = "sha256:ae887bd94eb404b09d86e4d12f93893bdca79d766e738528c6fa1c849f3c6bcf"}, + {file = "pydantic-2.6.4-py3-none-any.whl", hash = "sha256:cc46fce86607580867bdc3361ad462bab9c222ef042d3da86f2fb333e1d916c5"}, + {file = "pydantic-2.6.4.tar.gz", hash = "sha256:b1704e0847db01817624a6b86766967f552dd9dbf3afba4004409f908dcc84e6"}, ] [package.dependencies] annotated-types = ">=0.4.0" -pydantic-core = "2.16.1" +pydantic-core = "2.16.3" typing-extensions = ">=4.6.1" [package.extras] @@ -2588,91 +2701,91 @@ email = ["email-validator (>=2.0.0)"] [[package]] name = "pydantic-core" -version = "2.16.1" +version = "2.16.3" description = "" category = "main" optional = false python-versions = ">=3.8" files = [ - {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"}, + {file = "pydantic_core-2.16.3-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:75b81e678d1c1ede0785c7f46690621e4c6e63ccd9192af1f0bd9d504bbb6bf4"}, + {file = "pydantic_core-2.16.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9c865a7ee6f93783bd5d781af5a4c43dadc37053a5b42f7d18dc019f8c9d2bd1"}, + {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:162e498303d2b1c036b957a1278fa0899d02b2842f1ff901b6395104c5554a45"}, + {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2f583bd01bbfbff4eaee0868e6fc607efdfcc2b03c1c766b06a707abbc856187"}, + {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b926dd38db1519ed3043a4de50214e0d600d404099c3392f098a7f9d75029ff8"}, + {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:716b542728d4c742353448765aa7cdaa519a7b82f9564130e2b3f6766018c9ec"}, + {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fc4ad7f7ee1a13d9cb49d8198cd7d7e3aa93e425f371a68235f784e99741561f"}, + {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:bd87f48924f360e5d1c5f770d6155ce0e7d83f7b4e10c2f9ec001c73cf475c99"}, + {file = "pydantic_core-2.16.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:0df446663464884297c793874573549229f9eca73b59360878f382a0fc085979"}, + {file = "pydantic_core-2.16.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:4df8a199d9f6afc5ae9a65f8f95ee52cae389a8c6b20163762bde0426275b7db"}, + {file = "pydantic_core-2.16.3-cp310-none-win32.whl", hash = "sha256:456855f57b413f077dff513a5a28ed838dbbb15082ba00f80750377eed23d132"}, + {file = "pydantic_core-2.16.3-cp310-none-win_amd64.whl", hash = "sha256:732da3243e1b8d3eab8c6ae23ae6a58548849d2e4a4e03a1924c8ddf71a387cb"}, + {file = "pydantic_core-2.16.3-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:519ae0312616026bf4cedc0fe459e982734f3ca82ee8c7246c19b650b60a5ee4"}, + {file = "pydantic_core-2.16.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b3992a322a5617ded0a9f23fd06dbc1e4bd7cf39bc4ccf344b10f80af58beacd"}, + {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8d62da299c6ecb04df729e4b5c52dc0d53f4f8430b4492b93aa8de1f541c4aac"}, + {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2acca2be4bb2f2147ada8cac612f8a98fc09f41c89f87add7256ad27332c2fda"}, + {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1b662180108c55dfbf1280d865b2d116633d436cfc0bba82323554873967b340"}, + {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e7c6ed0dc9d8e65f24f5824291550139fe6f37fac03788d4580da0d33bc00c97"}, + {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a6b1bb0827f56654b4437955555dc3aeeebeddc47c2d7ed575477f082622c49e"}, + {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e56f8186d6210ac7ece503193ec84104da7ceb98f68ce18c07282fcc2452e76f"}, + {file = "pydantic_core-2.16.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:936e5db01dd49476fa8f4383c259b8b1303d5dd5fb34c97de194560698cc2c5e"}, + {file = "pydantic_core-2.16.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:33809aebac276089b78db106ee692bdc9044710e26f24a9a2eaa35a0f9fa70ba"}, + {file = "pydantic_core-2.16.3-cp311-none-win32.whl", hash = "sha256:ded1c35f15c9dea16ead9bffcde9bb5c7c031bff076355dc58dcb1cb436c4721"}, + {file = "pydantic_core-2.16.3-cp311-none-win_amd64.whl", hash = "sha256:d89ca19cdd0dd5f31606a9329e309d4fcbb3df860960acec32630297d61820df"}, + {file = "pydantic_core-2.16.3-cp311-none-win_arm64.whl", hash = "sha256:6162f8d2dc27ba21027f261e4fa26f8bcb3cf9784b7f9499466a311ac284b5b9"}, + {file = "pydantic_core-2.16.3-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:0f56ae86b60ea987ae8bcd6654a887238fd53d1384f9b222ac457070b7ac4cff"}, + {file = "pydantic_core-2.16.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:c9bd22a2a639e26171068f8ebb5400ce2c1bc7d17959f60a3b753ae13c632975"}, + {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4204e773b4b408062960e65468d5346bdfe139247ee5f1ca2a378983e11388a2"}, + {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:f651dd19363c632f4abe3480a7c87a9773be27cfe1341aef06e8759599454120"}, + {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:aaf09e615a0bf98d406657e0008e4a8701b11481840be7d31755dc9f97c44053"}, + {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8e47755d8152c1ab5b55928ab422a76e2e7b22b5ed8e90a7d584268dd49e9c6b"}, + {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:500960cb3a0543a724a81ba859da816e8cf01b0e6aaeedf2c3775d12ee49cade"}, + {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:cf6204fe865da605285c34cf1172879d0314ff267b1c35ff59de7154f35fdc2e"}, + {file = "pydantic_core-2.16.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:d33dd21f572545649f90c38c227cc8631268ba25c460b5569abebdd0ec5974ca"}, + {file = "pydantic_core-2.16.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:49d5d58abd4b83fb8ce763be7794d09b2f50f10aa65c0f0c1696c677edeb7cbf"}, + {file = "pydantic_core-2.16.3-cp312-none-win32.whl", hash = "sha256:f53aace168a2a10582e570b7736cc5bef12cae9cf21775e3eafac597e8551fbe"}, + {file = "pydantic_core-2.16.3-cp312-none-win_amd64.whl", hash = "sha256:0d32576b1de5a30d9a97f300cc6a3f4694c428d956adbc7e6e2f9cad279e45ed"}, + {file = "pydantic_core-2.16.3-cp312-none-win_arm64.whl", hash = "sha256:ec08be75bb268473677edb83ba71e7e74b43c008e4a7b1907c6d57e940bf34b6"}, + {file = "pydantic_core-2.16.3-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:b1f6f5938d63c6139860f044e2538baeee6f0b251a1816e7adb6cbce106a1f01"}, + {file = "pydantic_core-2.16.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2a1ef6a36fdbf71538142ed604ad19b82f67b05749512e47f247a6ddd06afdc7"}, + {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:704d35ecc7e9c31d48926150afada60401c55efa3b46cd1ded5a01bdffaf1d48"}, + {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d937653a696465677ed583124b94a4b2d79f5e30b2c46115a68e482c6a591c8a"}, + {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c9803edf8e29bd825f43481f19c37f50d2b01899448273b3a7758441b512acf8"}, + {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:72282ad4892a9fb2da25defeac8c2e84352c108705c972db82ab121d15f14e6d"}, + {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f752826b5b8361193df55afcdf8ca6a57d0232653494ba473630a83ba50d8c9"}, + {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:4384a8f68ddb31a0b0c3deae88765f5868a1b9148939c3f4121233314ad5532c"}, + {file = "pydantic_core-2.16.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:a4b2bf78342c40b3dc830880106f54328928ff03e357935ad26c7128bbd66ce8"}, + {file = "pydantic_core-2.16.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:13dcc4802961b5f843a9385fc821a0b0135e8c07fc3d9949fd49627c1a5e6ae5"}, + {file = "pydantic_core-2.16.3-cp38-none-win32.whl", hash = "sha256:e3e70c94a0c3841e6aa831edab1619ad5c511199be94d0c11ba75fe06efe107a"}, + {file = "pydantic_core-2.16.3-cp38-none-win_amd64.whl", hash = "sha256:ecdf6bf5f578615f2e985a5e1f6572e23aa632c4bd1dc67f8f406d445ac115ed"}, + {file = "pydantic_core-2.16.3-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:bda1ee3e08252b8d41fa5537413ffdddd58fa73107171a126d3b9ff001b9b820"}, + {file = "pydantic_core-2.16.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:21b888c973e4f26b7a96491c0965a8a312e13be108022ee510248fe379a5fa23"}, + {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:be0ec334369316fa73448cc8c982c01e5d2a81c95969d58b8f6e272884df0074"}, + {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:b5b6079cc452a7c53dd378c6f881ac528246b3ac9aae0f8eef98498a75657805"}, + {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7ee8d5f878dccb6d499ba4d30d757111847b6849ae07acdd1205fffa1fc1253c"}, + {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7233d65d9d651242a68801159763d09e9ec96e8a158dbf118dc090cd77a104c9"}, + {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c6119dc90483a5cb50a1306adb8d52c66e447da88ea44f323e0ae1a5fcb14256"}, + {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:578114bc803a4c1ff9946d977c221e4376620a46cf78da267d946397dc9514a8"}, + {file = "pydantic_core-2.16.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d8f99b147ff3fcf6b3cc60cb0c39ea443884d5559a30b1481e92495f2310ff2b"}, + {file = "pydantic_core-2.16.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:4ac6b4ce1e7283d715c4b729d8f9dab9627586dafce81d9eaa009dd7f25dd972"}, + {file = "pydantic_core-2.16.3-cp39-none-win32.whl", hash = "sha256:e7774b570e61cb998490c5235740d475413a1f6de823169b4cf94e2fe9e9f6b2"}, + {file = "pydantic_core-2.16.3-cp39-none-win_amd64.whl", hash = "sha256:9091632a25b8b87b9a605ec0e61f241c456e9248bfdcf7abdf344fdb169c81cf"}, + {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:36fa178aacbc277bc6b62a2c3da95226520da4f4e9e206fdf076484363895d2c"}, + {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:dcca5d2bf65c6fb591fff92da03f94cd4f315972f97c21975398bd4bd046854a"}, + {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2a72fb9963cba4cd5793854fd12f4cfee731e86df140f59ff52a49b3552db241"}, + {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b60cc1a081f80a2105a59385b92d82278b15d80ebb3adb200542ae165cd7d183"}, + {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:cbcc558401de90a746d02ef330c528f2e668c83350f045833543cd57ecead1ad"}, + {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:fee427241c2d9fb7192b658190f9f5fd6dfe41e02f3c1489d2ec1e6a5ab1e04a"}, + {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:f4cb85f693044e0f71f394ff76c98ddc1bc0953e48c061725e540396d5c8a2e1"}, + {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:b29eeb887aa931c2fcef5aa515d9d176d25006794610c264ddc114c053bf96fe"}, + {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:a425479ee40ff021f8216c9d07a6a3b54b31c8267c6e17aa88b70d7ebd0e5e5b"}, + {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:5c5cbc703168d1b7a838668998308018a2718c2130595e8e190220238addc96f"}, + {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:99b6add4c0b39a513d323d3b93bc173dac663c27b99860dd5bf491b240d26137"}, + {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:75f76ee558751746d6a38f89d60b6228fa174e5172d143886af0f85aa306fd89"}, + {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:00ee1c97b5364b84cb0bd82e9bbf645d5e2871fb8c58059d158412fee2d33d8a"}, + {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:287073c66748f624be4cef893ef9174e3eb88fe0b8a78dc22e88eca4bc357ca6"}, + {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:ed25e1835c00a332cb10c683cd39da96a719ab1dfc08427d476bce41b92531fc"}, + {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:86b3d0033580bd6bbe07590152007275bd7af95f98eaa5bd36f3da219dcd93da"}, + {file = "pydantic_core-2.16.3.tar.gz", hash = "sha256:1cac689f80a3abab2d3c0048b29eea5751114054f032a941a32de4c852c59cad"}, ] [package.dependencies] @@ -2712,14 +2825,14 @@ jsonasobj = ">=1.2.1" [[package]] name = "pymdown-extensions" -version = "10.7" +version = "10.7.1" description = "Extension pack for Python Markdown." category = "dev" optional = false python-versions = ">=3.8" files = [ - {file = "pymdown_extensions-10.7-py3-none-any.whl", hash = "sha256:6ca215bc57bc12bf32b414887a68b810637d039124ed9b2e5bd3325cbb2c050c"}, - {file = "pymdown_extensions-10.7.tar.gz", hash = "sha256:c0d64d5cf62566f59e6b2b690a4095c931107c250a8c8e1351c1de5f6b036deb"}, + {file = "pymdown_extensions-10.7.1-py3-none-any.whl", hash = "sha256:f5cc7000d7ff0d1ce9395d216017fa4df3dde800afb1fb72d1c7d3fd35e710f4"}, + {file = "pymdown_extensions-10.7.1.tar.gz", hash = "sha256:c70e146bdd83c744ffc766b4671999796aba18842b268510a329f7f64700d584"}, ] [package.dependencies] @@ -2731,39 +2844,19 @@ extra = ["pygments (>=2.12)"] [[package]] name = "pyparsing" -version = "3.1.1" +version = "3.1.2" description = "pyparsing module - Classes and methods to define and execute parsing grammars" category = "main" optional = false python-versions = ">=3.6.8" files = [ - {file = "pyparsing-3.1.1-py3-none-any.whl", hash = "sha256:32c7c0b711493c72ff18a981d24f28aaf9c1fb7ed5e9667c9e84e3db623bdbfb"}, - {file = "pyparsing-3.1.1.tar.gz", hash = "sha256:ede28a1a32462f5a9705e07aea48001a08f7cf81a021585011deba701581a0db"}, + {file = "pyparsing-3.1.2-py3-none-any.whl", hash = "sha256:f9db75911801ed778fe61bb643079ff86601aca99fcae6345aa67292038fb742"}, + {file = "pyparsing-3.1.2.tar.gz", hash = "sha256:a1bac0ce561155ecc3ed78ca94d3c9378656ad4c94c1270de543f621420f94ad"}, ] [package.extras] diagrams = ["jinja2", "railroad-diagrams"] -[[package]] -name = "pyproject-api" -version = "1.6.1" -description = "API to interact with the python pyproject.toml based projects" -category = "main" -optional = false -python-versions = ">=3.8" -files = [ - {file = "pyproject_api-1.6.1-py3-none-any.whl", hash = "sha256:4c0116d60476b0786c88692cf4e325a9814965e2469c5998b830bba16b183675"}, - {file = "pyproject_api-1.6.1.tar.gz", hash = "sha256:1817dc018adc0d1ff9ca1ed8c60e1623d5aaca40814b953af14a9cf9a5cae538"}, -] - -[package.dependencies] -packaging = ">=23.1" -tomli = {version = ">=2.0.1", markers = "python_version < \"3.11\""} - -[package.extras] -docs = ["furo (>=2023.8.19)", "sphinx (<7.2)", "sphinx-autodoc-typehints (>=1.24)"] -testing = ["covdefaults (>=2.3)", "pytest (>=7.4)", "pytest-cov (>=4.1)", "pytest-mock (>=3.11.1)", "setuptools (>=68.1.2)", "wheel (>=0.41.2)"] - [[package]] name = "pyshex" version = "0.8.1" @@ -2826,14 +2919,14 @@ solrcloud = ["kazoo (>=2.5.0)"] [[package]] name = "pystow" -version = "0.5.2" +version = "0.5.4" description = "Easily pick a place to store data for your python package." category = "dev" optional = false python-versions = ">=3.7" files = [ - {file = "pystow-0.5.2-py3-none-any.whl", hash = "sha256:c0faeb0fc854ede714be7949555f4d55ce40d8fd57f0ae1ff75e86158792299a"}, - {file = "pystow-0.5.2.tar.gz", hash = "sha256:d05d233299d61b50f53c7de220d990ec4c58e3a54d195d8449f0302563eb6de6"}, + {file = "pystow-0.5.4-py3-none-any.whl", hash = "sha256:c377cc9fff11127007e60eb5c4dc18f2ffd986c0d0cec27134cdcd4c805bc7d8"}, + {file = "pystow-0.5.4.tar.gz", hash = "sha256:2692180cb405bd77259bee6c7f4db545d10e81939980064730609f21750567ff"}, ] [package.dependencies] @@ -2851,14 +2944,14 @@ xml = ["lxml"] [[package]] name = "pytest" -version = "8.0.0" +version = "8.1.1" description = "pytest: simple powerful testing with Python" category = "main" optional = false python-versions = ">=3.8" files = [ - {file = "pytest-8.0.0-py3-none-any.whl", hash = "sha256:50fb9cbe836c3f20f0dfa99c565201fb75dc54c8d76373cd1bde06b06657bdb6"}, - {file = "pytest-8.0.0.tar.gz", hash = "sha256:249b1b0864530ba251b7438274c4d251c58d868edaaec8762893ad4a0d71c36c"}, + {file = "pytest-8.1.1-py3-none-any.whl", hash = "sha256:2a8386cfc11fa9d2c50ee7b2a57e7d898ef90470a7a34c4b949ff59662bb78b7"}, + {file = "pytest-8.1.1.tar.gz", hash = "sha256:ac978141a75948948817d360297b7aae0fcb9d6ff6bc9ec6d514b85d5a65c044"}, ] [package.dependencies] @@ -2866,11 +2959,11 @@ colorama = {version = "*", markers = "sys_platform == \"win32\""} exceptiongroup = {version = ">=1.0.0rc8", markers = "python_version < \"3.11\""} iniconfig = "*" packaging = "*" -pluggy = ">=1.3.0,<2.0" -tomli = {version = ">=1.0.0", markers = "python_version < \"3.11\""} +pluggy = ">=1.4,<2.0" +tomli = {version = ">=1", markers = "python_version < \"3.11\""} [package.extras] -testing = ["argcomplete", "attrs (>=19.2.0)", "hypothesis (>=3.56)", "mock", "nose", "pygments (>=2.7.2)", "requests", "setuptools", "xmlschema"] +testing = ["argcomplete", "attrs (>=19.2)", "hypothesis (>=3.56)", "mock", "pygments (>=2.7.2)", "requests", "setuptools", "xmlschema"] [[package]] name = "pytest-logging" @@ -2888,14 +2981,14 @@ pytest = ">=2.8.1" [[package]] name = "python-dateutil" -version = "2.8.2" +version = "2.9.0.post0" description = "Extensions to the standard Python datetime module" category = "dev" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" files = [ - {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"}, - {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"}, + {file = "python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3"}, + {file = "python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427"}, ] [package.dependencies] @@ -2909,6 +3002,7 @@ category = "main" optional = false python-versions = "*" files = [ + {file = "PyTrie-0.4.0-py3-none-any.whl", hash = "sha256:f687c224ee8c66cda8e8628a903011b692635ffbb08d4b39c5f92b18eb78c950"}, {file = "PyTrie-0.4.0.tar.gz", hash = "sha256:8f4488f402d3465993fb6b6efa09866849ed8cda7903b50647b7d0342b805379"}, ] @@ -2953,6 +3047,7 @@ files = [ {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, + {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a08c6f0fe150303c1c6b71ebcd7213c2858041a7e01975da3a99aed1e7a378ef"}, {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, @@ -3004,20 +3099,23 @@ pyyaml = "*" [[package]] name = "quantulum3" -version = "0.7.11" +version = "0.9.0" 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"}, + {file = "quantulum3-0.9.0-py3-none-any.whl", hash = "sha256:5f1d00bfde35627a6660d24ead4806445e5f197ab022689b359830e2125525bb"}, + {file = "quantulum3-0.9.0.tar.gz", hash = "sha256:6624adf9462d70b4d633415db3da20bfcc72bc1c40c668fa7ff635b07198a14d"}, ] [package.dependencies] inflect = "*" num2words = "*" +[package.extras] +classifier = ["joblib", "numpy", "scikit-learn", "scipy", "stemming", "wikipedia"] + [[package]] name = "ratelimit" version = "2.2.1" @@ -3031,28 +3129,25 @@ files = [ [[package]] name = "rdflib" -version = "6.2.0" +version = "7.0.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.7" +python-versions = ">=3.8.1,<4.0.0" files = [ - {file = "rdflib-6.2.0-py3-none-any.whl", hash = "sha256:85c34a86dfc517a41e5f2425a41a0aceacc23983462b32e68610b9fad1383bca"}, - {file = "rdflib-6.2.0.tar.gz", hash = "sha256:62dc3c86d1712db0f55785baf8047f63731fa59b2682be03219cb89262065942"}, + {file = "rdflib-7.0.0-py3-none-any.whl", hash = "sha256:0438920912a642c866a513de6fe8a0001bd86ef975057d6962c79ce4771687cd"}, + {file = "rdflib-7.0.0.tar.gz", hash = "sha256:9995eb8569428059b8c1affd26b25eac510d64f5043d9ce8c84e0d0036e995ae"}, ] [package.dependencies] -isodate = "*" -pyparsing = "*" -setuptools = "*" +isodate = ">=0.6.0,<0.7.0" +pyparsing = ">=2.1.0,<4" [package.extras] -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"] +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)"] [[package]] name = "rdflib-jsonld" @@ -3087,14 +3182,14 @@ rdflib-jsonld = "0.6.1" [[package]] name = "referencing" -version = "0.33.0" +version = "0.34.0" description = "JSON Referencing + Python" category = "main" optional = false python-versions = ">=3.8" files = [ - {file = "referencing-0.33.0-py3-none-any.whl", hash = "sha256:39240f2ecc770258f28b642dd47fd74bc8b02484de54e1882b74b35ebd779bd5"}, - {file = "referencing-0.33.0.tar.gz", hash = "sha256:c775fedf74bc0f9189c2a3be1c12fd03e8c23f4d371dce795df44e06c5b412f7"}, + {file = "referencing-0.34.0-py3-none-any.whl", hash = "sha256:d53ae300ceddd3169f1ffa9caf2cb7b769e92657e4fafb23d34b93679116dfd4"}, + {file = "referencing-0.34.0.tar.gz", hash = "sha256:5773bd84ef41799a5a8ca72dc34590c041eb01bf9aa02632b4a973fb0181a844"}, ] [package.dependencies] @@ -3125,14 +3220,14 @@ use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] [[package]] name = "requests-cache" -version = "1.1.1" +version = "1.2.0" description = "A persistent cache for python requests" category = "dev" optional = false -python-versions = ">=3.7,<4.0" +python-versions = ">=3.8" 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"}, + {file = "requests_cache-1.2.0-py3-none-any.whl", hash = "sha256:490324301bf0cb924ff4e6324bd2613453e7e1f847353928b08adb0fdfb7f722"}, + {file = "requests_cache-1.2.0.tar.gz", hash = "sha256:db1c709ca343cc1cd5b6c8b1a5387298eceed02306a6040760db538c885e3838"}, ] [package.dependencies] @@ -3144,26 +3239,26 @@ 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)"] +all = ["boto3 (>=1.15)", "botocore (>=1.18)", "itsdangerous (>=2.0)", "pymongo (>=3)", "pyyaml (>=6.0.1)", "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)"] +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.9)"] 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)"] +yaml = ["pyyaml (>=6.0.1)"] [[package]] name = "requests-oauthlib" -version = "1.3.1" +version = "2.0.0" description = "OAuthlib authentication support for Requests." category = "dev" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +python-versions = ">=3.4" files = [ - {file = "requests-oauthlib-1.3.1.tar.gz", hash = "sha256:75beac4a47881eeb94d5ea5d6ad31ef88856affe2332b9aafb52c6452ccf0d7a"}, - {file = "requests_oauthlib-1.3.1-py2.py3-none-any.whl", hash = "sha256:2577c501a2fb8d05a304c09d090d6e47c306fef15809d102b327cf8364bddab5"}, + {file = "requests-oauthlib-2.0.0.tar.gz", hash = "sha256:b3dffaebd884d8cd778494369603a9e7b58d29111bf6b41bdc2dcd87203af4e9"}, + {file = "requests_oauthlib-2.0.0-py2.py3-none-any.whl", hash = "sha256:7dd8a5c40426b779b0868c404bdef9768deccf22749cde15852df527e6269b36"}, ] [package.dependencies] @@ -3217,111 +3312,111 @@ files = [ [[package]] name = "rpds-py" -version = "0.17.1" +version = "0.18.0" description = "Python bindings to Rust's persistent data structures (rpds)" category = "main" optional = false python-versions = ">=3.8" files = [ - {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"}, + {file = "rpds_py-0.18.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:5b4e7d8d6c9b2e8ee2d55c90b59c707ca59bc30058269b3db7b1f8df5763557e"}, + {file = "rpds_py-0.18.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c463ed05f9dfb9baebef68048aed8dcdc94411e4bf3d33a39ba97e271624f8f7"}, + {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:01e36a39af54a30f28b73096dd39b6802eddd04c90dbe161c1b8dbe22353189f"}, + {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d62dec4976954a23d7f91f2f4530852b0c7608116c257833922a896101336c51"}, + {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dd18772815d5f008fa03d2b9a681ae38d5ae9f0e599f7dda233c439fcaa00d40"}, + {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:923d39efa3cfb7279a0327e337a7958bff00cc447fd07a25cddb0a1cc9a6d2da"}, + {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:39514da80f971362f9267c600b6d459bfbbc549cffc2cef8e47474fddc9b45b1"}, + {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a34d557a42aa28bd5c48a023c570219ba2593bcbbb8dc1b98d8cf5d529ab1434"}, + {file = "rpds_py-0.18.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:93df1de2f7f7239dc9cc5a4a12408ee1598725036bd2dedadc14d94525192fc3"}, + {file = "rpds_py-0.18.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:34b18ba135c687f4dac449aa5157d36e2cbb7c03cbea4ddbd88604e076aa836e"}, + {file = "rpds_py-0.18.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:c0b5dcf9193625afd8ecc92312d6ed78781c46ecbf39af9ad4681fc9f464af88"}, + {file = "rpds_py-0.18.0-cp310-none-win32.whl", hash = "sha256:c4325ff0442a12113a6379af66978c3fe562f846763287ef66bdc1d57925d337"}, + {file = "rpds_py-0.18.0-cp310-none-win_amd64.whl", hash = "sha256:7223a2a5fe0d217e60a60cdae28d6949140dde9c3bcc714063c5b463065e3d66"}, + {file = "rpds_py-0.18.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:3a96e0c6a41dcdba3a0a581bbf6c44bb863f27c541547fb4b9711fd8cf0ffad4"}, + {file = "rpds_py-0.18.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:30f43887bbae0d49113cbaab729a112251a940e9b274536613097ab8b4899cf6"}, + {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fcb25daa9219b4cf3a0ab24b0eb9a5cc8949ed4dc72acb8fa16b7e1681aa3c58"}, + {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d68c93e381010662ab873fea609bf6c0f428b6d0bb00f2c6939782e0818d37bf"}, + {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b34b7aa8b261c1dbf7720b5d6f01f38243e9b9daf7e6b8bc1fd4657000062f2c"}, + {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2e6d75ab12b0bbab7215e5d40f1e5b738aa539598db27ef83b2ec46747df90e1"}, + {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0b8612cd233543a3781bc659c731b9d607de65890085098986dfd573fc2befe5"}, + {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:aec493917dd45e3c69d00a8874e7cbed844efd935595ef78a0f25f14312e33c6"}, + {file = "rpds_py-0.18.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:661d25cbffaf8cc42e971dd570d87cb29a665f49f4abe1f9e76be9a5182c4688"}, + {file = "rpds_py-0.18.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:1df3659d26f539ac74fb3b0c481cdf9d725386e3552c6fa2974f4d33d78e544b"}, + {file = "rpds_py-0.18.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:a1ce3ba137ed54f83e56fb983a5859a27d43a40188ba798993812fed73c70836"}, + {file = "rpds_py-0.18.0-cp311-none-win32.whl", hash = "sha256:69e64831e22a6b377772e7fb337533c365085b31619005802a79242fee620bc1"}, + {file = "rpds_py-0.18.0-cp311-none-win_amd64.whl", hash = "sha256:998e33ad22dc7ec7e030b3df701c43630b5bc0d8fbc2267653577e3fec279afa"}, + {file = "rpds_py-0.18.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:7f2facbd386dd60cbbf1a794181e6aa0bd429bd78bfdf775436020172e2a23f0"}, + {file = "rpds_py-0.18.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:1d9a5be316c15ffb2b3c405c4ff14448c36b4435be062a7f578ccd8b01f0c4d8"}, + {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cd5bf1af8efe569654bbef5a3e0a56eca45f87cfcffab31dd8dde70da5982475"}, + {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5417558f6887e9b6b65b4527232553c139b57ec42c64570569b155262ac0754f"}, + {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:56a737287efecafc16f6d067c2ea0117abadcd078d58721f967952db329a3e5c"}, + {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8f03bccbd8586e9dd37219bce4d4e0d3ab492e6b3b533e973fa08a112cb2ffc9"}, + {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4457a94da0d5c53dc4b3e4de1158bdab077db23c53232f37a3cb7afdb053a4e3"}, + {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:0ab39c1ba9023914297dd88ec3b3b3c3f33671baeb6acf82ad7ce883f6e8e157"}, + {file = "rpds_py-0.18.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:9d54553c1136b50fd12cc17e5b11ad07374c316df307e4cfd6441bea5fb68496"}, + {file = "rpds_py-0.18.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:0af039631b6de0397ab2ba16eaf2872e9f8fca391b44d3d8cac317860a700a3f"}, + {file = "rpds_py-0.18.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:84ffab12db93b5f6bad84c712c92060a2d321b35c3c9960b43d08d0f639d60d7"}, + {file = "rpds_py-0.18.0-cp312-none-win32.whl", hash = "sha256:685537e07897f173abcf67258bee3c05c374fa6fff89d4c7e42fb391b0605e98"}, + {file = "rpds_py-0.18.0-cp312-none-win_amd64.whl", hash = "sha256:e003b002ec72c8d5a3e3da2989c7d6065b47d9eaa70cd8808b5384fbb970f4ec"}, + {file = "rpds_py-0.18.0-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:08f9ad53c3f31dfb4baa00da22f1e862900f45908383c062c27628754af2e88e"}, + {file = "rpds_py-0.18.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c0013fe6b46aa496a6749c77e00a3eb07952832ad6166bd481c74bda0dcb6d58"}, + {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e32a92116d4f2a80b629778280103d2a510a5b3f6314ceccd6e38006b5e92dcb"}, + {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e541ec6f2ec456934fd279a3120f856cd0aedd209fc3852eca563f81738f6861"}, + {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bed88b9a458e354014d662d47e7a5baafd7ff81c780fd91584a10d6ec842cb73"}, + {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2644e47de560eb7bd55c20fc59f6daa04682655c58d08185a9b95c1970fa1e07"}, + {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8e8916ae4c720529e18afa0b879473049e95949bf97042e938530e072fde061d"}, + {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:465a3eb5659338cf2a9243e50ad9b2296fa15061736d6e26240e713522b6235c"}, + {file = "rpds_py-0.18.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:ea7d4a99f3b38c37eac212dbd6ec42b7a5ec51e2c74b5d3223e43c811609e65f"}, + {file = "rpds_py-0.18.0-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:67071a6171e92b6da534b8ae326505f7c18022c6f19072a81dcf40db2638767c"}, + {file = "rpds_py-0.18.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:41ef53e7c58aa4ef281da975f62c258950f54b76ec8e45941e93a3d1d8580594"}, + {file = "rpds_py-0.18.0-cp38-none-win32.whl", hash = "sha256:fdea4952db2793c4ad0bdccd27c1d8fdd1423a92f04598bc39425bcc2b8ee46e"}, + {file = "rpds_py-0.18.0-cp38-none-win_amd64.whl", hash = "sha256:7cd863afe7336c62ec78d7d1349a2f34c007a3cc6c2369d667c65aeec412a5b1"}, + {file = "rpds_py-0.18.0-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:5307def11a35f5ae4581a0b658b0af8178c65c530e94893345bebf41cc139d33"}, + {file = "rpds_py-0.18.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:77f195baa60a54ef9d2de16fbbfd3ff8b04edc0c0140a761b56c267ac11aa467"}, + {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:39f5441553f1c2aed4de4377178ad8ff8f9d733723d6c66d983d75341de265ab"}, + {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:9a00312dea9310d4cb7dbd7787e722d2e86a95c2db92fbd7d0155f97127bcb40"}, + {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8f2fc11e8fe034ee3c34d316d0ad8808f45bc3b9ce5857ff29d513f3ff2923a1"}, + {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:586f8204935b9ec884500498ccc91aa869fc652c40c093bd9e1471fbcc25c022"}, + {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ddc2f4dfd396c7bfa18e6ce371cba60e4cf9d2e5cdb71376aa2da264605b60b9"}, + {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5ddcba87675b6d509139d1b521e0c8250e967e63b5909a7e8f8944d0f90ff36f"}, + {file = "rpds_py-0.18.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:7bd339195d84439cbe5771546fe8a4e8a7a045417d8f9de9a368c434e42a721e"}, + {file = "rpds_py-0.18.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:d7c36232a90d4755b720fbd76739d8891732b18cf240a9c645d75f00639a9024"}, + {file = "rpds_py-0.18.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:6b0817e34942b2ca527b0e9298373e7cc75f429e8da2055607f4931fded23e20"}, + {file = "rpds_py-0.18.0-cp39-none-win32.whl", hash = "sha256:99f70b740dc04d09e6b2699b675874367885217a2e9f782bdf5395632ac663b7"}, + {file = "rpds_py-0.18.0-cp39-none-win_amd64.whl", hash = "sha256:6ef687afab047554a2d366e112dd187b62d261d49eb79b77e386f94644363294"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:ad36cfb355e24f1bd37cac88c112cd7730873f20fb0bdaf8ba59eedf8216079f"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:36b3ee798c58ace201289024b52788161e1ea133e4ac93fba7d49da5fec0ef9e"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f8a2f084546cc59ea99fda8e070be2fd140c3092dc11524a71aa8f0f3d5a55ca"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e4461d0f003a0aa9be2bdd1b798a041f177189c1a0f7619fe8c95ad08d9a45d7"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8db715ebe3bb7d86d77ac1826f7d67ec11a70dbd2376b7cc214199360517b641"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:793968759cd0d96cac1e367afd70c235867831983f876a53389ad869b043c948"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:66e6a3af5a75363d2c9a48b07cb27c4ea542938b1a2e93b15a503cdfa8490795"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6ef0befbb5d79cf32d0266f5cff01545602344eda89480e1dd88aca964260b18"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:1d4acf42190d449d5e89654d5c1ed3a4f17925eec71f05e2a41414689cda02d1"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:a5f446dd5055667aabaee78487f2b5ab72e244f9bc0b2ffebfeec79051679984"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:9dbbeb27f4e70bfd9eec1be5477517365afe05a9b2c441a0b21929ee61048124"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-macosx_10_12_x86_64.whl", hash = "sha256:22806714311a69fd0af9b35b7be97c18a0fc2826e6827dbb3a8c94eac6cf7eeb"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:b34ae4636dfc4e76a438ab826a0d1eed2589ca7d9a1b2d5bb546978ac6485461"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c8370641f1a7f0e0669ddccca22f1da893cef7628396431eb445d46d893e5cd"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c8362467a0fdeccd47935f22c256bec5e6abe543bf0d66e3d3d57a8fb5731863"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:11a8c85ef4a07a7638180bf04fe189d12757c696eb41f310d2426895356dcf05"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b316144e85316da2723f9d8dc75bada12fa58489a527091fa1d5a612643d1a0e"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cf1ea2e34868f6fbf070e1af291c8180480310173de0b0c43fc38a02929fc0e3"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e546e768d08ad55b20b11dbb78a745151acbd938f8f00d0cfbabe8b0199b9880"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:4901165d170a5fde6f589acb90a6b33629ad1ec976d4529e769c6f3d885e3e80"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-musllinux_1_2_i686.whl", hash = "sha256:618a3d6cae6ef8ec88bb76dd80b83cfe415ad4f1d942ca2a903bf6b6ff97a2da"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:ed4eb745efbff0a8e9587d22a84be94a5eb7d2d99c02dacf7bd0911713ed14dd"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:6c81e5f372cd0dc5dc4809553d34f832f60a46034a5f187756d9b90586c2c307"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:43fbac5f22e25bee1d482c97474f930a353542855f05c1161fd804c9dc74a09d"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6d7faa6f14017c0b1e69f5e2c357b998731ea75a442ab3841c0dbbbfe902d2c4"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:08231ac30a842bd04daabc4d71fddd7e6d26189406d5a69535638e4dcb88fe76"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:044a3e61a7c2dafacae99d1e722cc2d4c05280790ec5a05031b3876809d89a5c"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3f26b5bd1079acdb0c7a5645e350fe54d16b17bfc5e71f371c449383d3342e17"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:482103aed1dfe2f3b71a58eff35ba105289b8d862551ea576bd15479aba01f66"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1374f4129f9bcca53a1bba0bb86bf78325a0374577cf7e9e4cd046b1e6f20e24"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:635dc434ff724b178cb192c70016cc0ad25a275228f749ee0daf0eddbc8183b1"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-musllinux_1_2_i686.whl", hash = "sha256:bc362ee4e314870a70f4ae88772d72d877246537d9f8cb8f7eacf10884862432"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:4832d7d380477521a8c1644bbab6588dfedea5e30a7d967b5fb75977c45fd77f"}, + {file = "rpds_py-0.18.0.tar.gz", hash = "sha256:42821446ee7a76f5d9f71f9e33a4fb2ffd724bb3e7f93386150b61a43115788d"}, ] [[package]] @@ -3341,14 +3436,14 @@ pyasn1 = ">=0.1.3" [[package]] name = "ruamel-yaml" -version = "0.18.5" +version = "0.18.6" description = "ruamel.yaml is a YAML parser/emitter that supports roundtrip preservation of comments, seq/map flow style, and map key order" category = "dev" optional = false python-versions = ">=3.7" files = [ - {file = "ruamel.yaml-0.18.5-py3-none-any.whl", hash = "sha256:a013ac02f99a69cdd6277d9664689eb1acba07069f912823177c5eced21a6ada"}, - {file = "ruamel.yaml-0.18.5.tar.gz", hash = "sha256:61917e3a35a569c1133a8f772e1226961bf5a1198bea7e23f06a0841dea1ab0e"}, + {file = "ruamel.yaml-0.18.6-py3-none-any.whl", hash = "sha256:57b53ba33def16c4f3d807c0ccbc00f8a6081827e81ba2491691b76882d0c636"}, + {file = "ruamel.yaml-0.18.6.tar.gz", hash = "sha256:8b27e6a217e786c6fbe5634d8f3f11bc63e0f80f6a5890f28863d9c45aac311b"}, ] [package.dependencies] @@ -3369,30 +3464,50 @@ files = [ {file = "ruamel.yaml.clib-0.2.8-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:b42169467c42b692c19cf539c38d4602069d8c1505e97b86387fcf7afb766e1d"}, {file = "ruamel.yaml.clib-0.2.8-cp310-cp310-macosx_13_0_arm64.whl", hash = "sha256:07238db9cbdf8fc1e9de2489a4f68474e70dffcb32232db7c08fa61ca0c7c462"}, {file = "ruamel.yaml.clib-0.2.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:fff3573c2db359f091e1589c3d7c5fc2f86f5bdb6f24252c2d8e539d4e45f412"}, + {file = "ruamel.yaml.clib-0.2.8-cp310-cp310-manylinux_2_24_aarch64.whl", hash = "sha256:aa2267c6a303eb483de8d02db2871afb5c5fc15618d894300b88958f729ad74f"}, + {file = "ruamel.yaml.clib-0.2.8-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:840f0c7f194986a63d2c2465ca63af8ccbbc90ab1c6001b1978f05119b5e7334"}, + {file = "ruamel.yaml.clib-0.2.8-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:024cfe1fc7c7f4e1aff4a81e718109e13409767e4f871443cbff3dba3578203d"}, {file = "ruamel.yaml.clib-0.2.8-cp310-cp310-win32.whl", hash = "sha256:c69212f63169ec1cfc9bb44723bf2917cbbd8f6191a00ef3410f5a7fe300722d"}, {file = "ruamel.yaml.clib-0.2.8-cp310-cp310-win_amd64.whl", hash = "sha256:cabddb8d8ead485e255fe80429f833172b4cadf99274db39abc080e068cbcc31"}, {file = "ruamel.yaml.clib-0.2.8-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:bef08cd86169d9eafb3ccb0a39edb11d8e25f3dae2b28f5c52fd997521133069"}, {file = "ruamel.yaml.clib-0.2.8-cp311-cp311-macosx_13_0_arm64.whl", hash = "sha256:b16420e621d26fdfa949a8b4b47ade8810c56002f5389970db4ddda51dbff248"}, {file = "ruamel.yaml.clib-0.2.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:25c515e350e5b739842fc3228d662413ef28f295791af5e5110b543cf0b57d9b"}, + {file = "ruamel.yaml.clib-0.2.8-cp311-cp311-manylinux_2_24_aarch64.whl", hash = "sha256:1707814f0d9791df063f8c19bb51b0d1278b8e9a2353abbb676c2f685dee6afe"}, + {file = "ruamel.yaml.clib-0.2.8-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:46d378daaac94f454b3a0e3d8d78cafd78a026b1d71443f4966c696b48a6d899"}, + {file = "ruamel.yaml.clib-0.2.8-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:09b055c05697b38ecacb7ac50bdab2240bfca1a0c4872b0fd309bb07dc9aa3a9"}, {file = "ruamel.yaml.clib-0.2.8-cp311-cp311-win32.whl", hash = "sha256:53a300ed9cea38cf5a2a9b069058137c2ca1ce658a874b79baceb8f892f915a7"}, {file = "ruamel.yaml.clib-0.2.8-cp311-cp311-win_amd64.whl", hash = "sha256:c2a72e9109ea74e511e29032f3b670835f8a59bbdc9ce692c5b4ed91ccf1eedb"}, {file = "ruamel.yaml.clib-0.2.8-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:ebc06178e8821efc9692ea7544aa5644217358490145629914d8020042c24aa1"}, {file = "ruamel.yaml.clib-0.2.8-cp312-cp312-macosx_13_0_arm64.whl", hash = "sha256:edaef1c1200c4b4cb914583150dcaa3bc30e592e907c01117c08b13a07255ec2"}, {file = "ruamel.yaml.clib-0.2.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d176b57452ab5b7028ac47e7b3cf644bcfdc8cacfecf7e71759f7f51a59e5c92"}, + {file = "ruamel.yaml.clib-0.2.8-cp312-cp312-manylinux_2_24_aarch64.whl", hash = "sha256:1dc67314e7e1086c9fdf2680b7b6c2be1c0d8e3a8279f2e993ca2a7545fecf62"}, + {file = "ruamel.yaml.clib-0.2.8-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:3213ece08ea033eb159ac52ae052a4899b56ecc124bb80020d9bbceeb50258e9"}, + {file = "ruamel.yaml.clib-0.2.8-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:aab7fd643f71d7946f2ee58cc88c9b7bfc97debd71dcc93e03e2d174628e7e2d"}, + {file = "ruamel.yaml.clib-0.2.8-cp312-cp312-win32.whl", hash = "sha256:5c365d91c88390c8d0a8545df0b5857172824b1c604e867161e6b3d59a827eaa"}, + {file = "ruamel.yaml.clib-0.2.8-cp312-cp312-win_amd64.whl", hash = "sha256:1758ce7d8e1a29d23de54a16ae867abd370f01b5a69e1a3ba75223eaa3ca1a1b"}, {file = "ruamel.yaml.clib-0.2.8-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:a5aa27bad2bb83670b71683aae140a1f52b0857a2deff56ad3f6c13a017a26ed"}, {file = "ruamel.yaml.clib-0.2.8-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:c58ecd827313af6864893e7af0a3bb85fd529f862b6adbefe14643947cfe2942"}, {file = "ruamel.yaml.clib-0.2.8-cp37-cp37m-macosx_12_0_arm64.whl", hash = "sha256:f481f16baec5290e45aebdc2a5168ebc6d35189ae6fea7a58787613a25f6e875"}, + {file = "ruamel.yaml.clib-0.2.8-cp37-cp37m-manylinux_2_24_aarch64.whl", hash = "sha256:77159f5d5b5c14f7c34073862a6b7d34944075d9f93e681638f6d753606c6ce6"}, {file = "ruamel.yaml.clib-0.2.8-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:7f67a1ee819dc4562d444bbafb135832b0b909f81cc90f7aa00260968c9ca1b3"}, + {file = "ruamel.yaml.clib-0.2.8-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:4ecbf9c3e19f9562c7fdd462e8d18dd902a47ca046a2e64dba80699f0b6c09b7"}, + {file = "ruamel.yaml.clib-0.2.8-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:87ea5ff66d8064301a154b3933ae406b0863402a799b16e4a1d24d9fbbcbe0d3"}, {file = "ruamel.yaml.clib-0.2.8-cp37-cp37m-win32.whl", hash = "sha256:75e1ed13e1f9de23c5607fe6bd1aeaae21e523b32d83bb33918245361e9cc51b"}, {file = "ruamel.yaml.clib-0.2.8-cp37-cp37m-win_amd64.whl", hash = "sha256:3f215c5daf6a9d7bbed4a0a4f760f3113b10e82ff4c5c44bec20a68c8014f675"}, {file = "ruamel.yaml.clib-0.2.8-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1b617618914cb00bf5c34d4357c37aa15183fa229b24767259657746c9077615"}, {file = "ruamel.yaml.clib-0.2.8-cp38-cp38-macosx_12_0_arm64.whl", hash = "sha256:a6a9ffd280b71ad062eae53ac1659ad86a17f59a0fdc7699fd9be40525153337"}, + {file = "ruamel.yaml.clib-0.2.8-cp38-cp38-manylinux_2_24_aarch64.whl", hash = "sha256:305889baa4043a09e5b76f8e2a51d4ffba44259f6b4c72dec8ca56207d9c6fe1"}, {file = "ruamel.yaml.clib-0.2.8-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:700e4ebb569e59e16a976857c8798aee258dceac7c7d6b50cab63e080058df91"}, + {file = "ruamel.yaml.clib-0.2.8-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:e2b4c44b60eadec492926a7270abb100ef9f72798e18743939bdbf037aab8c28"}, + {file = "ruamel.yaml.clib-0.2.8-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:e79e5db08739731b0ce4850bed599235d601701d5694c36570a99a0c5ca41a9d"}, {file = "ruamel.yaml.clib-0.2.8-cp38-cp38-win32.whl", hash = "sha256:955eae71ac26c1ab35924203fda6220f84dce57d6d7884f189743e2abe3a9fbe"}, {file = "ruamel.yaml.clib-0.2.8-cp38-cp38-win_amd64.whl", hash = "sha256:56f4252222c067b4ce51ae12cbac231bce32aee1d33fbfc9d17e5b8d6966c312"}, {file = "ruamel.yaml.clib-0.2.8-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:03d1162b6d1df1caa3a4bd27aa51ce17c9afc2046c31b0ad60a0a96ec22f8001"}, {file = "ruamel.yaml.clib-0.2.8-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:bba64af9fa9cebe325a62fa398760f5c7206b215201b0ec825005f1b18b9bccf"}, + {file = "ruamel.yaml.clib-0.2.8-cp39-cp39-manylinux_2_24_aarch64.whl", hash = "sha256:a1a45e0bb052edf6a1d3a93baef85319733a888363938e1fc9924cb00c8df24c"}, {file = "ruamel.yaml.clib-0.2.8-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:da09ad1c359a728e112d60116f626cc9f29730ff3e0e7db72b9a2dbc2e4beed5"}, + {file = "ruamel.yaml.clib-0.2.8-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:184565012b60405d93838167f425713180b949e9d8dd0bbc7b49f074407c5a8b"}, + {file = "ruamel.yaml.clib-0.2.8-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:a75879bacf2c987c003368cf14bed0ffe99e8e85acfa6c0bfffc21a090f16880"}, {file = "ruamel.yaml.clib-0.2.8-cp39-cp39-win32.whl", hash = "sha256:84b554931e932c46f94ab306913ad7e11bba988104c5cff26d90d03f68258cd5"}, {file = "ruamel.yaml.clib-0.2.8-cp39-cp39-win_amd64.whl", hash = "sha256:25ac8c08322002b06fa1d49d1646181f0b2c72f5cbc15a85e80b4c30a544bb15"}, {file = "ruamel.yaml.clib-0.2.8.tar.gz", hash = "sha256:beb2e0404003de9a4cab9753a8805a8fe9320ee6673136ed7f04255fe60bb512"}, @@ -3451,91 +3566,46 @@ ontodev-cogs = ">=0.3.3,<0.4.0" [[package]] name = "scipy" -version = "1.12.0" +version = "1.13.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"}, + {file = "scipy-1.13.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ba419578ab343a4e0a77c0ef82f088238a93eef141b2b8017e46149776dfad4d"}, + {file = "scipy-1.13.0-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:22789b56a999265431c417d462e5b7f2b487e831ca7bef5edeb56efe4c93f86e"}, + {file = "scipy-1.13.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:05f1432ba070e90d42d7fd836462c50bf98bd08bed0aa616c359eed8a04e3922"}, + {file = "scipy-1.13.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b8434f6f3fa49f631fae84afee424e2483289dfc30a47755b4b4e6b07b2633a4"}, + {file = "scipy-1.13.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:dcbb9ea49b0167de4167c40eeee6e167caeef11effb0670b554d10b1e693a8b9"}, + {file = "scipy-1.13.0-cp310-cp310-win_amd64.whl", hash = "sha256:1d2f7bb14c178f8b13ebae93f67e42b0a6b0fc50eba1cd8021c9b6e08e8fb1cd"}, + {file = "scipy-1.13.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:0fbcf8abaf5aa2dc8d6400566c1a727aed338b5fe880cde64907596a89d576fa"}, + {file = "scipy-1.13.0-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:5e4a756355522eb60fcd61f8372ac2549073c8788f6114449b37e9e8104f15a5"}, + {file = "scipy-1.13.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b5acd8e1dbd8dbe38d0004b1497019b2dbbc3d70691e65d69615f8a7292865d7"}, + {file = "scipy-1.13.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9ff7dad5d24a8045d836671e082a490848e8639cabb3dbdacb29f943a678683d"}, + {file = "scipy-1.13.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:4dca18c3ffee287ddd3bc8f1dabaf45f5305c5afc9f8ab9cbfab855e70b2df5c"}, + {file = "scipy-1.13.0-cp311-cp311-win_amd64.whl", hash = "sha256:a2f471de4d01200718b2b8927f7d76b5d9bde18047ea0fa8bd15c5ba3f26a1d6"}, + {file = "scipy-1.13.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:d0de696f589681c2802f9090fff730c218f7c51ff49bf252b6a97ec4a5d19e8b"}, + {file = "scipy-1.13.0-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:b2a3ff461ec4756b7e8e42e1c681077349a038f0686132d623fa404c0bee2551"}, + {file = "scipy-1.13.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6bf9fe63e7a4bf01d3645b13ff2aa6dea023d38993f42aaac81a18b1bda7a82a"}, + {file = "scipy-1.13.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1e7626dfd91cdea5714f343ce1176b6c4745155d234f1033584154f60ef1ff42"}, + {file = "scipy-1.13.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:109d391d720fcebf2fbe008621952b08e52907cf4c8c7efc7376822151820820"}, + {file = "scipy-1.13.0-cp312-cp312-win_amd64.whl", hash = "sha256:8930ae3ea371d6b91c203b1032b9600d69c568e537b7988a3073dfe4d4774f21"}, + {file = "scipy-1.13.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5407708195cb38d70fd2d6bb04b1b9dd5c92297d86e9f9daae1576bd9e06f602"}, + {file = "scipy-1.13.0-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:ac38c4c92951ac0f729c4c48c9e13eb3675d9986cc0c83943784d7390d540c78"}, + {file = "scipy-1.13.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:09c74543c4fbeb67af6ce457f6a6a28e5d3739a87f62412e4a16e46f164f0ae5"}, + {file = "scipy-1.13.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:28e286bf9ac422d6beb559bc61312c348ca9b0f0dae0d7c5afde7f722d6ea13d"}, + {file = "scipy-1.13.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:33fde20efc380bd23a78a4d26d59fc8704e9b5fd9b08841693eb46716ba13d86"}, + {file = "scipy-1.13.0-cp39-cp39-win_amd64.whl", hash = "sha256:45c08bec71d3546d606989ba6e7daa6f0992918171e2a6f7fbedfa7361c2de1e"}, + {file = "scipy-1.13.0.tar.gz", hash = "sha256:58569af537ea29d3f78e5abd18398459f195546bb3be23d16677fb26616cc11e"}, ] [package.dependencies] -numpy = ">=1.22.4,<1.29.0" +numpy = ">=1.22.4,<2.3" [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"}, -] +dev = ["cython-lint (>=0.12.2)", "doit (>=0.36.0)", "mypy", "pycodestyle", "pydevtool", "rich-click", "ruff", "types-psutil", "typing_extensions"] +doc = ["jupyterlite-pyodide-kernel", "jupyterlite-sphinx (>=0.12.0)", "jupytext", "matplotlib (>=3.5)", "myst-nb", "numpydoc", "pooch", "pydata-sphinx-theme (>=0.15.2)", "sphinx (>=5.0.0)", "sphinx-design (>=0.4.0)"] +test = ["array-api-strict", "asv", "gmpy2", "hypothesis (>=6.30)", "mpmath", "pooch", "pytest", "pytest-cov", "pytest-timeout", "pytest-xdist", "scikit-umfpack", "threadpoolctl"] [[package]] name = "semsql" @@ -3556,20 +3626,20 @@ SQLAlchemy-Utils = ">=0.38.2,<0.39.0" [[package]] name = "setuptools" -version = "69.0.3" +version = "69.2.0" description = "Easily download, build, install, upgrade, and uninstall Python packages" -category = "main" +category = "dev" optional = false python-versions = ">=3.8" files = [ - {file = "setuptools-69.0.3-py3-none-any.whl", hash = "sha256:385eb4edd9c9d5c17540511303e39a147ce2fc04bc55289c322b9e5904fe2c05"}, - {file = "setuptools-69.0.3.tar.gz", hash = "sha256:be1af57fc409f93647f2e8e4573a142ed38724b8cdd389706a867bb4efcf1e78"}, + {file = "setuptools-69.2.0-py3-none-any.whl", hash = "sha256:c21c49fb1042386df081cb5d86759792ab89efca84cf114889191cd09aacc80c"}, + {file = "setuptools-69.2.0.tar.gz", hash = "sha256:0ff4183f8f42cd8fa3acea16c45205521a4ef28f73c6391d8a25e92893134f2e"}, ] [package.extras] docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier"] -testing = ["build[virtualenv]", "filelock (>=3.4.0)", "flake8-2020", "ini2toml[lite] (>=0.9)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pip (>=19.1)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-perf", "pytest-ruff", "pytest-timeout", "pytest-xdist", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"] -testing-integration = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "packaging (>=23.1)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"] +testing = ["build[virtualenv]", "filelock (>=3.4.0)", "importlib-metadata", "ini2toml[lite] (>=0.9)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "mypy (==1.9)", "packaging (>=23.2)", "pip (>=19.1)", "pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-home (>=0.5)", "pytest-mypy (>=0.9.1)", "pytest-perf", "pytest-ruff (>=0.2.1)", "pytest-timeout", "pytest-xdist (>=3)", "tomli", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"] +testing-integration = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "packaging (>=23.2)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"] [[package]] name = "shexjsg" @@ -3662,61 +3732,61 @@ pandas = ["pandas (>=1.3.5)"] [[package]] name = "sqlalchemy" -version = "2.0.25" +version = "2.0.29" description = "Database Abstraction Library" category = "dev" optional = false python-versions = ">=3.7" files = [ - {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"}, + {file = "SQLAlchemy-2.0.29-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:4c142852ae192e9fe5aad5c350ea6befe9db14370b34047e1f0f7cf99e63c63b"}, + {file = "SQLAlchemy-2.0.29-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:99a1e69d4e26f71e750e9ad6fdc8614fbddb67cfe2173a3628a2566034e223c7"}, + {file = "SQLAlchemy-2.0.29-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5ef3fbccb4058355053c51b82fd3501a6e13dd808c8d8cd2561e610c5456013c"}, + {file = "SQLAlchemy-2.0.29-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9d6753305936eddc8ed190e006b7bb33a8f50b9854823485eed3a886857ab8d1"}, + {file = "SQLAlchemy-2.0.29-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:0f3ca96af060a5250a8ad5a63699180bc780c2edf8abf96c58af175921df847a"}, + {file = "SQLAlchemy-2.0.29-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:c4520047006b1d3f0d89e0532978c0688219857eb2fee7c48052560ae76aca1e"}, + {file = "SQLAlchemy-2.0.29-cp310-cp310-win32.whl", hash = "sha256:b2a0e3cf0caac2085ff172c3faacd1e00c376e6884b5bc4dd5b6b84623e29e4f"}, + {file = "SQLAlchemy-2.0.29-cp310-cp310-win_amd64.whl", hash = "sha256:01d10638a37460616708062a40c7b55f73e4d35eaa146781c683e0fa7f6c43fb"}, + {file = "SQLAlchemy-2.0.29-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:308ef9cb41d099099fffc9d35781638986870b29f744382904bf9c7dadd08513"}, + {file = "SQLAlchemy-2.0.29-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:296195df68326a48385e7a96e877bc19aa210e485fa381c5246bc0234c36c78e"}, + {file = "SQLAlchemy-2.0.29-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a13b917b4ffe5a0a31b83d051d60477819ddf18276852ea68037a144a506efb9"}, + {file = "SQLAlchemy-2.0.29-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4f6d971255d9ddbd3189e2e79d743ff4845c07f0633adfd1de3f63d930dbe673"}, + {file = "SQLAlchemy-2.0.29-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:61405ea2d563407d316c63a7b5271ae5d274a2a9fbcd01b0aa5503635699fa1e"}, + {file = "SQLAlchemy-2.0.29-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:de7202ffe4d4a8c1e3cde1c03e01c1a3772c92858837e8f3879b497158e4cb44"}, + {file = "SQLAlchemy-2.0.29-cp311-cp311-win32.whl", hash = "sha256:b5d7ed79df55a731749ce65ec20d666d82b185fa4898430b17cb90c892741520"}, + {file = "SQLAlchemy-2.0.29-cp311-cp311-win_amd64.whl", hash = "sha256:205f5a2b39d7c380cbc3b5dcc8f2762fb5bcb716838e2d26ccbc54330775b003"}, + {file = "SQLAlchemy-2.0.29-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:d96710d834a6fb31e21381c6d7b76ec729bd08c75a25a5184b1089141356171f"}, + {file = "SQLAlchemy-2.0.29-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:52de4736404e53c5c6a91ef2698c01e52333988ebdc218f14c833237a0804f1b"}, + {file = "SQLAlchemy-2.0.29-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c7b02525ede2a164c5fa5014915ba3591730f2cc831f5be9ff3b7fd3e30958e"}, + {file = "SQLAlchemy-2.0.29-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0dfefdb3e54cd15f5d56fd5ae32f1da2d95d78319c1f6dfb9bcd0eb15d603d5d"}, + {file = "SQLAlchemy-2.0.29-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:a88913000da9205b13f6f195f0813b6ffd8a0c0c2bd58d499e00a30eb508870c"}, + {file = "SQLAlchemy-2.0.29-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:fecd5089c4be1bcc37c35e9aa678938d2888845a134dd016de457b942cf5a758"}, + {file = "SQLAlchemy-2.0.29-cp312-cp312-win32.whl", hash = "sha256:8197d6f7a3d2b468861ebb4c9f998b9df9e358d6e1cf9c2a01061cb9b6cf4e41"}, + {file = "SQLAlchemy-2.0.29-cp312-cp312-win_amd64.whl", hash = "sha256:9b19836ccca0d321e237560e475fd99c3d8655d03da80c845c4da20dda31b6e1"}, + {file = "SQLAlchemy-2.0.29-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:87a1d53a5382cdbbf4b7619f107cc862c1b0a4feb29000922db72e5a66a5ffc0"}, + {file = "SQLAlchemy-2.0.29-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2a0732dffe32333211801b28339d2a0babc1971bc90a983e3035e7b0d6f06b93"}, + {file = "SQLAlchemy-2.0.29-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:90453597a753322d6aa770c5935887ab1fc49cc4c4fdd436901308383d698b4b"}, + {file = "SQLAlchemy-2.0.29-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:ea311d4ee9a8fa67f139c088ae9f905fcf0277d6cd75c310a21a88bf85e130f5"}, + {file = "SQLAlchemy-2.0.29-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:5f20cb0a63a3e0ec4e169aa8890e32b949c8145983afa13a708bc4b0a1f30e03"}, + {file = "SQLAlchemy-2.0.29-cp37-cp37m-win32.whl", hash = "sha256:e5bbe55e8552019c6463709b39634a5fc55e080d0827e2a3a11e18eb73f5cdbd"}, + {file = "SQLAlchemy-2.0.29-cp37-cp37m-win_amd64.whl", hash = "sha256:c2f9c762a2735600654c654bf48dad388b888f8ce387b095806480e6e4ff6907"}, + {file = "SQLAlchemy-2.0.29-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:7e614d7a25a43a9f54fcce4675c12761b248547f3d41b195e8010ca7297c369c"}, + {file = "SQLAlchemy-2.0.29-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:471fcb39c6adf37f820350c28aac4a7df9d3940c6548b624a642852e727ea586"}, + {file = "SQLAlchemy-2.0.29-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:988569c8732f54ad3234cf9c561364221a9e943b78dc7a4aaf35ccc2265f1930"}, + {file = "SQLAlchemy-2.0.29-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dddaae9b81c88083e6437de95c41e86823d150f4ee94bf24e158a4526cbead01"}, + {file = "SQLAlchemy-2.0.29-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:334184d1ab8f4c87f9652b048af3f7abea1c809dfe526fb0435348a6fef3d380"}, + {file = "SQLAlchemy-2.0.29-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:38b624e5cf02a69b113c8047cf7f66b5dfe4a2ca07ff8b8716da4f1b3ae81567"}, + {file = "SQLAlchemy-2.0.29-cp38-cp38-win32.whl", hash = "sha256:bab41acf151cd68bc2b466deae5deeb9e8ae9c50ad113444151ad965d5bf685b"}, + {file = "SQLAlchemy-2.0.29-cp38-cp38-win_amd64.whl", hash = "sha256:52c8011088305476691b8750c60e03b87910a123cfd9ad48576d6414b6ec2a1d"}, + {file = "SQLAlchemy-2.0.29-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:3071ad498896907a5ef756206b9dc750f8e57352113c19272bdfdc429c7bd7de"}, + {file = "SQLAlchemy-2.0.29-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:dba622396a3170974f81bad49aacebd243455ec3cc70615aeaef9e9613b5bca5"}, + {file = "SQLAlchemy-2.0.29-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7b184e3de58009cc0bf32e20f137f1ec75a32470f5fede06c58f6c355ed42a72"}, + {file = "SQLAlchemy-2.0.29-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8c37f1050feb91f3d6c32f864d8e114ff5545a4a7afe56778d76a9aec62638ba"}, + {file = "SQLAlchemy-2.0.29-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:bda7ce59b06d0f09afe22c56714c65c957b1068dee3d5e74d743edec7daba552"}, + {file = "SQLAlchemy-2.0.29-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:25664e18bef6dc45015b08f99c63952a53a0a61f61f2e48a9e70cec27e55f699"}, + {file = "SQLAlchemy-2.0.29-cp39-cp39-win32.whl", hash = "sha256:77d29cb6c34b14af8a484e831ab530c0f7188f8efed1c6a833a2c674bf3c26ec"}, + {file = "SQLAlchemy-2.0.29-cp39-cp39-win_amd64.whl", hash = "sha256:04c487305ab035a9548f573763915189fc0fe0824d9ba28433196f8436f1449c"}, + {file = "SQLAlchemy-2.0.29-py3-none-any.whl", hash = "sha256:dc4ee2d4ee43251905f88637d5281a8d52e916a021384ec10758826f5cbae305"}, + {file = "SQLAlchemy-2.0.29.tar.gz", hash = "sha256:bd9566b8e58cabd700bc367b60e90d9349cd16f0984973f98a9a09f9c64e86f0"}, ] [package.dependencies] @@ -3779,21 +3849,22 @@ url = ["furl (>=0.4.1)"] [[package]] name = "sssom" -version = "0.4.3" +version = "0.4.6" description = "Operations on SSSOM mapping tables" category = "dev" optional = false -python-versions = ">=3.8,<4.0" +python-versions = "<4.0,>=3.8" files = [ - {file = "sssom-0.4.3-py3-none-any.whl", hash = "sha256:52d6dc634d059e6118f695bdb869338c18d2fce335b69e5c32f5b5a21fbb248e"}, - {file = "sssom-0.4.3.tar.gz", hash = "sha256:b339fd5518595ccc55db379726d1dfe819fa62e7abb6cfb4d633bfe9664f3e57"}, + {file = "sssom-0.4.6-py3-none-any.whl", hash = "sha256:1d593ca1cffdd8093f86ab8912380afe1669d476740a5e7e1fbd13078ee9e69c"}, + {file = "sssom-0.4.6.tar.gz", hash = "sha256:ee836b723474f53fea09afe3158c2deb32813f61c6c59dd948860f02436eba9d"}, ] [package.dependencies] click = ">=8.1.6" curies = ">=0.7.3" deprecation = ">=2.1.0,<3.0.0" -linkml-runtime = ">=1.5.5" +importlib-resources = ">=6.1.1,<7.0.0" +linkml-runtime = ">=1.7.5,<2.0.0" networkx = {version = ">=3.1", extras = ["networkx"]} pandas = ">1.0.3" pansql = {version = ">=0.0.1", extras = ["pansql"]} @@ -3801,24 +3872,23 @@ pyyaml = ">=6.0.1,<7.0.0" rdflib = ">=6.0.0" scipy = {version = "*", extras = ["scipy"]} sparqlwrapper = ">=2.0.0" -sssom-schema = ">=0.14.0" +sssom-schema = ">=0.15.2,<0.16.0" validators = ">=0.20.0" [[package]] name = "sssom-schema" -version = "0.15.0" +version = "0.15.2" description = "SSSOM is a Simple Standard for Sharing Ontology Mappings." category = "dev" optional = false -python-versions = ">=3.7.6,<4.0.0" +python-versions = "<4.0,>=3.8" 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"}, + {file = "sssom_schema-0.15.2-py3-none-any.whl", hash = "sha256:41112586160d5e57a7cfedab22dfd0c21d1e3e1a86805f7fe31918a9b664ca15"}, + {file = "sssom_schema-0.15.2.tar.gz", hash = "sha256:c759ee8f9e4a7e5e8249b58198189b2e48e297ff31a918d4af64a89ed30938da"}, ] [package.dependencies] linkml-runtime = "*" -mkdocs-mermaid2-plugin = ">=0.6.0,<0.7.0" [[package]] name = "strenum" @@ -3864,6 +3934,21 @@ files = [ [package.extras] widechars = ["wcwidth"] +[[package]] +name = "tenacity" +version = "8.2.3" +description = "Retry code until it succeeds" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "tenacity-8.2.3-py3-none-any.whl", hash = "sha256:ce510e327a630c9e1beaf17d42e6ffacc88185044ad85cf74c0a8887c6a0f88c"}, + {file = "tenacity-8.2.3.tar.gz", hash = "sha256:5398ef0d78e63f40007c1fb4c0bff96e1911394d2fa8d194f77619c05ff6cc8a"}, +] + +[package.extras] +doc = ["reno", "sphinx", "tornado (>=4.5)"] + [[package]] name = "termcolor" version = "2.4.0" @@ -3893,87 +3978,79 @@ files = [ [[package]] name = "tomlkit" -version = "0.11.8" +version = "0.12.4" 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"}, + {file = "tomlkit-0.12.4-py3-none-any.whl", hash = "sha256:5cd82d48a3dd89dee1f9d64420aa20ae65cfbd00668d6f094d7578a78efbb77b"}, + {file = "tomlkit-0.12.4.tar.gz", hash = "sha256:7ca1cfc12232806517a8515047ba66a19369e71edf2439d0f5824f91032b6cc3"}, ] [[package]] -name = "tox" -version = "4.12.1" -description = "tox is a generic virtualenv management and test command line tool" -category = "main" +name = "tqdm" +version = "4.66.2" +description = "Fast, Extensible Progress Meter" +category = "dev" optional = false -python-versions = ">=3.8" +python-versions = ">=3.7" files = [ - {file = "tox-4.12.1-py3-none-any.whl", hash = "sha256:c07ea797880a44f3c4f200ad88ad92b446b83079d4ccef89585df64cc574375c"}, - {file = "tox-4.12.1.tar.gz", hash = "sha256:61aafbeff1bd8a5af84e54ef6e8402f53c6a6066d0782336171ddfbf5362122e"}, + {file = "tqdm-4.66.2-py3-none-any.whl", hash = "sha256:1ee4f8a893eb9bef51c6e35730cebf234d5d0b6bd112b0271e10ed7c24a02bd9"}, + {file = "tqdm-4.66.2.tar.gz", hash = "sha256:6cd52cdf0fef0e0f543299cfc96fec90d7b8a7e88745f411ec33eb44d5ed3531"}, ] [package.dependencies] -cachetools = ">=5.3.2" -chardet = ">=5.2" -colorama = ">=0.4.6" -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.25" +colorama = {version = "*", markers = "platform_system == \"Windows\""} [package.extras] -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)"] +dev = ["pytest (>=6)", "pytest-cov", "pytest-timeout", "pytest-xdist"] +notebook = ["ipywidgets (>=6)"] +slack = ["slack-sdk"] +telegram = ["requests"] [[package]] -name = "tqdm" -version = "4.66.1" -description = "Fast, Extensible Progress Meter" +name = "typeguard" +version = "4.2.1" +description = "Run-time type checker for Python" category = "dev" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "tqdm-4.66.1-py3-none-any.whl", hash = "sha256:d302b3c5b53d47bce91fea46679d9c3c6508cf6332229aa1e7d8653723793386"}, - {file = "tqdm-4.66.1.tar.gz", hash = "sha256:d88e651f9db8d8551a62556d3cff9e3034274ca5d66e93197cf2490e2dcb69c7"}, + {file = "typeguard-4.2.1-py3-none-any.whl", hash = "sha256:7da3bd46e61f03e0852f8d251dcbdc2a336aa495d7daff01e092b55327796eb8"}, + {file = "typeguard-4.2.1.tar.gz", hash = "sha256:c556a1b95948230510070ca53fa0341fb0964611bd05d598d87fb52115d65fee"}, ] [package.dependencies] -colorama = {version = "*", markers = "platform_system == \"Windows\""} +importlib-metadata = {version = ">=3.6", markers = "python_version < \"3.10\""} +typing-extensions = {version = ">=4.10.0", markers = "python_version < \"3.13\""} [package.extras] -dev = ["pytest (>=6)", "pytest-cov", "pytest-timeout", "pytest-xdist"] -notebook = ["ipywidgets (>=6)"] -slack = ["slack-sdk"] -telegram = ["requests"] +doc = ["Sphinx (>=7)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)"] +test = ["coverage[toml] (>=7)", "mypy (>=1.2.0)", "pytest (>=7)"] [[package]] name = "types-python-dateutil" -version = "2.8.19.20240106" +version = "2.9.0.20240316" description = "Typing stubs for python-dateutil" category = "dev" optional = false python-versions = ">=3.8" files = [ - {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"}, + {file = "types-python-dateutil-2.9.0.20240316.tar.gz", hash = "sha256:5d2f2e240b86905e40944dd787db6da9263f0deabef1076ddaed797351ec0202"}, + {file = "types_python_dateutil-2.9.0.20240316-py3-none-any.whl", hash = "sha256:6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b"}, ] [[package]] name = "typing-extensions" -version = "4.9.0" +version = "4.11.0" description = "Backported and Experimental Type Hints for Python 3.8+" category = "main" optional = false python-versions = ">=3.8" files = [ - {file = "typing_extensions-4.9.0-py3-none-any.whl", hash = "sha256:af72aea155e91adfc61c3ae9e0e342dbc0cba726d6cba4b6c72c1f34e47291cd"}, - {file = "typing_extensions-4.9.0.tar.gz", hash = "sha256:23478f88c37f27d76ac8aee6c905017a143b0b1b886c3c9f66bc2fd94f9f5783"}, + {file = "typing_extensions-4.11.0-py3-none-any.whl", hash = "sha256:c1f94d72897edaf4ce775bb7558d5b79d8126906a14ea5ed1635921406c0387a"}, + {file = "typing_extensions-4.11.0.tar.gz", hash = "sha256:83f085bd5ca59c80295fc2a82ab5dac679cbe02b9f33f7d83af68e241bea51b0"}, ] [[package]] @@ -3992,16 +4069,28 @@ files = [ mypy-extensions = ">=0.3.0" typing-extensions = ">=3.7.4" +[[package]] +name = "tzdata" +version = "2024.1" +description = "Provider of IANA time zone data" +category = "dev" +optional = false +python-versions = ">=2" +files = [ + {file = "tzdata-2024.1-py2.py3-none-any.whl", hash = "sha256:9068bc196136463f5245e51efda838afa15aaeca9903f49050dfa2679db4d252"}, + {file = "tzdata-2024.1.tar.gz", hash = "sha256:2674120f8d891909751c38abcdfd386ac0a5a1127954fbc332af6b5ceae07efd"}, +] + [[package]] name = "ucumvert" -version = "0.1.1" +version = "0.1.2" 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"}, + {file = "ucumvert-0.1.2-py3-none-any.whl", hash = "sha256:480f0cd9315ebc5c6da3117de42296a4f8e35deb84a7f0b8719a909129afb72b"}, + {file = "ucumvert-0.1.2.tar.gz", hash = "sha256:a7c0dab878571ed5e03abab988c46e40e40092b253d6da5041d2305e1ddecd02"}, ] [package.dependencies] @@ -4057,14 +4146,14 @@ six = "*" [[package]] name = "urllib3" -version = "2.2.0" +version = "2.2.1" description = "HTTP library with thread-safe connection pooling, file post, and more." category = "main" optional = false python-versions = ">=3.8" files = [ - {file = "urllib3-2.2.0-py3-none-any.whl", hash = "sha256:ce3711610ddce217e6d113a2732fafad960a03fd0318c91faa79481e35c11224"}, - {file = "urllib3-2.2.0.tar.gz", hash = "sha256:051d961ad0c62a94e50ecf1af379c3aba230c66c710493493560c0c223c49f20"}, + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, ] [package.extras] @@ -4075,83 +4164,53 @@ zstd = ["zstandard (>=0.18.0)"] [[package]] name = "validators" -version = "0.22.0" +version = "0.28.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"}, + {file = "validators-0.28.0-py3-none-any.whl", hash = "sha256:e0184691dea3ba82b52c161ba81d3ec1d8be8da9609f0137d1430b395b366521"}, + {file = "validators-0.28.0.tar.gz", hash = "sha256:85bc82511f6ccd0800f4c15d8c0dc546c15e369640c5ea1f24349ba0b3b17815"}, ] -[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.25.0" -description = "Virtual Python Environment builder" -category = "main" -optional = false -python-versions = ">=3.7" -files = [ - {file = "virtualenv-20.25.0-py3-none-any.whl", hash = "sha256:4238949c5ffe6876362d9c0180fc6c3a824a7b12b80604eeb8085f2ed7460de3"}, - {file = "virtualenv-20.25.0.tar.gz", hash = "sha256:bf51c0d9c7dd63ea8e44086fa1e4fb1093a31e963b86959257378aef020e1f1b"}, -] - -[package.dependencies] -distlib = ">=0.3.7,<1" -filelock = ">=3.12.2,<4" -platformdirs = ">=3.9.1,<5" - -[package.extras] -docs = ["furo (>=2023.7.26)", "proselint (>=0.13)", "sphinx (>=7.1.2)", "sphinx-argparse (>=0.4)", "sphinxcontrib-towncrier (>=0.2.1a0)", "towncrier (>=23.6)"] -test = ["covdefaults (>=2.3)", "coverage (>=7.2.7)", "coverage-enable-subprocess (>=1)", "flaky (>=3.7)", "packaging (>=23.1)", "pytest (>=7.4)", "pytest-env (>=0.8.2)", "pytest-freezer (>=0.4.8)", "pytest-mock (>=3.11.1)", "pytest-randomly (>=3.12)", "pytest-timeout (>=2.1)", "setuptools (>=68)", "time-machine (>=2.10)"] - [[package]] name = "watchdog" -version = "3.0.0" +version = "4.0.0" description = "Filesystem events monitoring" category = "dev" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "watchdog-3.0.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:336adfc6f5cc4e037d52db31194f7581ff744b67382eb6021c868322e32eef41"}, - {file = "watchdog-3.0.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:a70a8dcde91be523c35b2bf96196edc5730edb347e374c7de7cd20c43ed95397"}, - {file = "watchdog-3.0.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:adfdeab2da79ea2f76f87eb42a3ab1966a5313e5a69a0213a3cc06ef692b0e96"}, - {file = "watchdog-3.0.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:2b57a1e730af3156d13b7fdddfc23dea6487fceca29fc75c5a868beed29177ae"}, - {file = "watchdog-3.0.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:7ade88d0d778b1b222adebcc0927428f883db07017618a5e684fd03b83342bd9"}, - {file = "watchdog-3.0.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7e447d172af52ad204d19982739aa2346245cc5ba6f579d16dac4bfec226d2e7"}, - {file = "watchdog-3.0.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:9fac43a7466eb73e64a9940ac9ed6369baa39b3bf221ae23493a9ec4d0022674"}, - {file = "watchdog-3.0.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8ae9cda41fa114e28faf86cb137d751a17ffd0316d1c34ccf2235e8a84365c7f"}, - {file = "watchdog-3.0.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:25f70b4aa53bd743729c7475d7ec41093a580528b100e9a8c5b5efe8899592fc"}, - {file = "watchdog-3.0.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4f94069eb16657d2c6faada4624c39464f65c05606af50bb7902e036e3219be3"}, - {file = "watchdog-3.0.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:7c5f84b5194c24dd573fa6472685b2a27cc5a17fe5f7b6fd40345378ca6812e3"}, - {file = "watchdog-3.0.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:3aa7f6a12e831ddfe78cdd4f8996af9cf334fd6346531b16cec61c3b3c0d8da0"}, - {file = "watchdog-3.0.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:233b5817932685d39a7896b1090353fc8efc1ef99c9c054e46c8002561252fb8"}, - {file = "watchdog-3.0.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:13bbbb462ee42ec3c5723e1205be8ced776f05b100e4737518c67c8325cf6100"}, - {file = "watchdog-3.0.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:8f3ceecd20d71067c7fd4c9e832d4e22584318983cabc013dbf3f70ea95de346"}, - {file = "watchdog-3.0.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:c9d8c8ec7efb887333cf71e328e39cffbf771d8f8f95d308ea4125bf5f90ba64"}, - {file = "watchdog-3.0.0-py3-none-manylinux2014_aarch64.whl", hash = "sha256:0e06ab8858a76e1219e68c7573dfeba9dd1c0219476c5a44d5333b01d7e1743a"}, - {file = "watchdog-3.0.0-py3-none-manylinux2014_armv7l.whl", hash = "sha256:d00e6be486affb5781468457b21a6cbe848c33ef43f9ea4a73b4882e5f188a44"}, - {file = "watchdog-3.0.0-py3-none-manylinux2014_i686.whl", hash = "sha256:c07253088265c363d1ddf4b3cdb808d59a0468ecd017770ed716991620b8f77a"}, - {file = "watchdog-3.0.0-py3-none-manylinux2014_ppc64.whl", hash = "sha256:5113334cf8cf0ac8cd45e1f8309a603291b614191c9add34d33075727a967709"}, - {file = "watchdog-3.0.0-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:51f90f73b4697bac9c9a78394c3acbbd331ccd3655c11be1a15ae6fe289a8c83"}, - {file = "watchdog-3.0.0-py3-none-manylinux2014_s390x.whl", hash = "sha256:ba07e92756c97e3aca0912b5cbc4e5ad802f4557212788e72a72a47ff376950d"}, - {file = "watchdog-3.0.0-py3-none-manylinux2014_x86_64.whl", hash = "sha256:d429c2430c93b7903914e4db9a966c7f2b068dd2ebdd2fa9b9ce094c7d459f33"}, - {file = "watchdog-3.0.0-py3-none-win32.whl", hash = "sha256:3ed7c71a9dccfe838c2f0b6314ed0d9b22e77d268c67e015450a29036a81f60f"}, - {file = "watchdog-3.0.0-py3-none-win_amd64.whl", hash = "sha256:4c9956d27be0bb08fc5f30d9d0179a855436e655f046d288e2bcc11adfae893c"}, - {file = "watchdog-3.0.0-py3-none-win_ia64.whl", hash = "sha256:5d9f3a10e02d7371cd929b5d8f11e87d4bad890212ed3901f9b4d68767bee759"}, - {file = "watchdog-3.0.0.tar.gz", hash = "sha256:4d98a320595da7a7c5a18fc48cb633c2e73cda78f93cac2ef42d42bf609a33f9"}, + {file = "watchdog-4.0.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:39cb34b1f1afbf23e9562501673e7146777efe95da24fab5707b88f7fb11649b"}, + {file = "watchdog-4.0.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c522392acc5e962bcac3b22b9592493ffd06d1fc5d755954e6be9f4990de932b"}, + {file = "watchdog-4.0.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6c47bdd680009b11c9ac382163e05ca43baf4127954c5f6d0250e7d772d2b80c"}, + {file = "watchdog-4.0.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:8350d4055505412a426b6ad8c521bc7d367d1637a762c70fdd93a3a0d595990b"}, + {file = "watchdog-4.0.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c17d98799f32e3f55f181f19dd2021d762eb38fdd381b4a748b9f5a36738e935"}, + {file = "watchdog-4.0.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:4986db5e8880b0e6b7cd52ba36255d4793bf5cdc95bd6264806c233173b1ec0b"}, + {file = "watchdog-4.0.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:11e12fafb13372e18ca1bbf12d50f593e7280646687463dd47730fd4f4d5d257"}, + {file = "watchdog-4.0.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:5369136a6474678e02426bd984466343924d1df8e2fd94a9b443cb7e3aa20d19"}, + {file = "watchdog-4.0.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:76ad8484379695f3fe46228962017a7e1337e9acadafed67eb20aabb175df98b"}, + {file = "watchdog-4.0.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:45cc09cc4c3b43fb10b59ef4d07318d9a3ecdbff03abd2e36e77b6dd9f9a5c85"}, + {file = "watchdog-4.0.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:eed82cdf79cd7f0232e2fdc1ad05b06a5e102a43e331f7d041e5f0e0a34a51c4"}, + {file = "watchdog-4.0.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:ba30a896166f0fee83183cec913298151b73164160d965af2e93a20bbd2ab605"}, + {file = "watchdog-4.0.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:d18d7f18a47de6863cd480734613502904611730f8def45fc52a5d97503e5101"}, + {file = "watchdog-4.0.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:2895bf0518361a9728773083908801a376743bcc37dfa252b801af8fd281b1ca"}, + {file = "watchdog-4.0.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:87e9df830022488e235dd601478c15ad73a0389628588ba0b028cb74eb72fed8"}, + {file = "watchdog-4.0.0-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:6e949a8a94186bced05b6508faa61b7adacc911115664ccb1923b9ad1f1ccf7b"}, + {file = "watchdog-4.0.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:6a4db54edea37d1058b08947c789a2354ee02972ed5d1e0dca9b0b820f4c7f92"}, + {file = "watchdog-4.0.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:d31481ccf4694a8416b681544c23bd271f5a123162ab603c7d7d2dd7dd901a07"}, + {file = "watchdog-4.0.0-py3-none-manylinux2014_aarch64.whl", hash = "sha256:8fec441f5adcf81dd240a5fe78e3d83767999771630b5ddfc5867827a34fa3d3"}, + {file = "watchdog-4.0.0-py3-none-manylinux2014_armv7l.whl", hash = "sha256:6a9c71a0b02985b4b0b6d14b875a6c86ddea2fdbebd0c9a720a806a8bbffc69f"}, + {file = "watchdog-4.0.0-py3-none-manylinux2014_i686.whl", hash = "sha256:557ba04c816d23ce98a06e70af6abaa0485f6d94994ec78a42b05d1c03dcbd50"}, + {file = "watchdog-4.0.0-py3-none-manylinux2014_ppc64.whl", hash = "sha256:d0f9bd1fd919134d459d8abf954f63886745f4660ef66480b9d753a7c9d40927"}, + {file = "watchdog-4.0.0-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:f9b2fdca47dc855516b2d66eef3c39f2672cbf7e7a42e7e67ad2cbfcd6ba107d"}, + {file = "watchdog-4.0.0-py3-none-manylinux2014_s390x.whl", hash = "sha256:73c7a935e62033bd5e8f0da33a4dcb763da2361921a69a5a95aaf6c93aa03a87"}, + {file = "watchdog-4.0.0-py3-none-manylinux2014_x86_64.whl", hash = "sha256:6a80d5cae8c265842c7419c560b9961561556c4361b297b4c431903f8c33b269"}, + {file = "watchdog-4.0.0-py3-none-win32.whl", hash = "sha256:8f9a542c979df62098ae9c58b19e03ad3df1c9d8c6895d96c0d51da17b243b1c"}, + {file = "watchdog-4.0.0-py3-none-win_amd64.whl", hash = "sha256:f970663fa4f7e80401a7b0cbeec00fa801bf0287d93d48368fc3e6fa32716245"}, + {file = "watchdog-4.0.0-py3-none-win_ia64.whl", hash = "sha256:9a03e16e55465177d416699331b0f3564138f1807ecc5f2de9d55d8f188d08c7"}, + {file = "watchdog-4.0.0.tar.gz", hash = "sha256:e3e7065cbdabe6183ab82199d7a4f6b3ba0a438c5a512a68559846ccb76a78ec"}, ] [package.extras] @@ -4267,19 +4326,19 @@ files = [ [[package]] name = "zipp" -version = "3.17.0" +version = "3.18.1" description = "Backport of pathlib-compatible object wrapper for zip files" category = "dev" optional = false python-versions = ">=3.8" files = [ - {file = "zipp-3.17.0-py3-none-any.whl", hash = "sha256:0e923e726174922dce09c53c59ad483ff7bbb8e572e00c7f7c46b88556409f31"}, - {file = "zipp-3.17.0.tar.gz", hash = "sha256:84e64a1c28cf7e91ed2078bb8cc8c259cb19b76942096c8d7b84947690cabaf0"}, + {file = "zipp-3.18.1-py3-none-any.whl", hash = "sha256:206f5a15f2af3dbaee80769fb7dc6f249695e940acca08dfb2a4769fe61e538b"}, + {file = "zipp-3.18.1.tar.gz", hash = "sha256:2884ed22e7d8961de1c9a05142eb69a247f120291bc0206a00a7642f09b5b715"}, ] [package.extras] -docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] -testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ignore-flaky", "pytest-mypy (>=0.9.1)", "pytest-ruff"] +docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ignore-flaky", "pytest-mypy", "pytest-ruff (>=0.2.1)"] [extras] docs = [] @@ -4287,4 +4346,4 @@ docs = [] [metadata] lock-version = "2.0" python-versions = "^3.9" -content-hash = "ab89a72bcf22c85de28bb503bcf0afa274fb9a051b4eaddf58dfbef3dbcafa4f" +content-hash = "33da836e02160042b8acb345f638f653874c35cedfd44da91e32f80b00918199" diff --git a/project/excel/linkml_common.xlsx b/project/excel/linkml_common.xlsx index 0e006b284583c561f97d126d16e6b2e4e4f8248b..217fe4d20c6c81160792f4d3467aa916dc93a18c 100644 GIT binary patch literal 59945 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 F`hNj=pJxC7 literal 45894 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 . @prefix linkml_common: . @prefix owl: . +@prefix prov: . @prefix rdf: . @prefix rdfs: . -@prefix schema: . +@prefix schema1: . @prefix skos: . @prefix xsd: . @@ -19,23 +20,29 @@ linkml_common:EnvironmentalMonitoring a owl:Class ; linkml_common:HumanLanguageCodeEnum a owl:Class ; rdfs:subClassOf linkml:EnumDefinition . +linkml_common:InvestigativeProtocolEnum a owl:Class ; + rdfs:subClassOf linkml:EnumDefinition . + +linkml_common:SampleProcessingEnum 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: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 ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Quantity ; + owl:onProperty linkml_common:outputs ], linkml_common:MathematicalOperation ; skos:definition "A unit conversion operation" ; skos:inScheme linkml_common:quantities . @@ -65,11 +72,6 @@ linkml_common:EnvironmentalProcess a owl:Class ; skos:inScheme linkml_common:environmental ; skos:note "TODO" . -linkml_common:Location a owl:Class ; - rdfs:label "Location" ; - rdfs:subClassOf linkml:ClassDefinition ; - skos:inScheme linkml_common:core . - linkml_common:PointLocation a owl:Class ; rdfs:label "PointLocation" ; rdfs:subClassOf linkml_common:Location ; @@ -115,23 +117,23 @@ linkml_common:CaseOrControlEnum a owl:Class ; linkml_common:ClinicalCohortEnrollment a owl:Class ; rdfs:label "ClinicalCohortEnrollment" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml_common:ClinicalCohort ; - owl:onProperty linkml_common:cohort ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; 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 ], + owl:allValuesFrom linkml_common:Patient ; + owl:onProperty linkml_common:patient ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:patient ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Patient ; - owl:onProperty linkml_common:patient ], + owl:maxCardinality 1 ; + owl:onProperty linkml_common:cohort ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:ClinicalCohort ; + owl:onProperty linkml_common:cohort ], linkml_common:Event ; skos:definition "An event relating a patient to a clinical cohort" ; skos:exactMatch ; @@ -140,10 +142,10 @@ linkml_common:ClinicalCohortEnrollment a owl:Class ; linkml_common:Collection a owl:Class ; rdfs:label "Collection" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml_common:Entity ; owl:onProperty linkml_common:members ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Entity ; + owl:minCardinality 0 ; owl:onProperty linkml_common:members ], linkml_common:Intangible ; skos:definition "A group of things. The collection may be heterogeneous or homogeneous." ; @@ -167,14 +169,26 @@ linkml_common:DataStructure a owl:Class ; linkml_common:Dataset a owl:Class ; rdfs:label "Dataset" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml_common:Investigation ; owl:onProperty linkml_common:collected_as_part_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Investigation ; + owl:minCardinality 0 ; owl:onProperty linkml_common:collected_as_part_of ], linkml_common:CreativeWork ; skos:inScheme linkml_common:datasets . +linkml_common:ElectricalGrid a owl:Class ; + rdfs:label "ElectricalGrid" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml_common:PowerPlant ; + owl:onProperty linkml_common:plants ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:plants ], + linkml_common:BuiltSystem ; + skos:definition "A network of electrical transmission lines" ; + skos:inScheme linkml_common:energytechnology . + linkml_common:EngineeringMaterialProcessing a owl:Class ; rdfs:label "EngineeringMaterialProcessing" ; rdfs:subClassOf linkml_common:MaterialProcessing ; @@ -186,109 +200,247 @@ linkml_common:EnvironmentalSite a owl:Class ; skos:definition "A location or site that is the subject of environmental monitoring" ; skos:inScheme linkml_common:environmental . +linkml_common:ExtractiveIndustryEquipment a owl:Class ; + rdfs:label "ExtractiveIndustryEquipment" ; + rdfs:subClassOf linkml_common:Equipment ; + skos:definition "The equipment used in extractive industry operations" ; + skos:inScheme linkml_common:extractiveindustry . + + a owl:Class ; + rdfs:label "MINING_FACILITY" ; + rdfs:subClassOf linkml_common:ExtractiveIndustryFacilityType, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "QUARRY_FACILITY" ; + rdfs:subClassOf linkml_common:ExtractiveIndustryFacilityType, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "WELL_FACILITY" ; + rdfs:subClassOf linkml_common:ExtractiveIndustryFacilityType, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "COAL" ; + rdfs:subClassOf linkml_common:ExtractiveIndustryProductType, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "GAS" ; + rdfs:subClassOf linkml_common:ExtractiveIndustryProductType, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "GRAVEL" ; + rdfs:subClassOf linkml_common:ExtractiveIndustryProductType, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "METAL" ; + rdfs:subClassOf linkml_common:ExtractiveIndustryProductType, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "MINERAL" ; + rdfs:subClassOf linkml_common:ExtractiveIndustryProductType, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "OIL" ; + rdfs:subClassOf linkml_common:ExtractiveIndustryProductType, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "SAND" ; + rdfs:subClassOf linkml_common:ExtractiveIndustryProductType, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "STONE" ; + rdfs:subClassOf linkml_common:ExtractiveIndustryProductType, + linkml:PermissibleValue . + +linkml_common:ExtractiveIndustryWaste a owl:Class ; + rdfs:label "ExtractiveIndustryWaste" ; + rdfs:subClassOf linkml_common:Concept ; + skos:definition "Waste material generated from extractive industry operations" ; + skos:inScheme linkml_common:extractiveindustry . + linkml_common:FinancialAccount a owl:Class ; rdfs:label "FinancialAccount" ; rdfs:subClassOf [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:account_number ], + owl:onProperty linkml_common:account_holder ], [ a owl:Restriction ; - owl:allValuesFrom xsd:string ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:account_number ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:account_holder ], + owl:minCardinality 0 ; + owl:onProperty linkml_common:bank ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Person ; - owl:onProperty linkml_common:account_holder ], + owl:maxCardinality 1 ; + owl:onProperty linkml_common:bank ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:Organization ; owl:onProperty linkml_common:bank ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom xsd:string ; owl:onProperty linkml_common:account_number ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:bank ], - [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml_common:Person ; owl:onProperty linkml_common:account_holder ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:bank ], + owl:onProperty linkml_common:account_holder ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:account_number ], linkml_common:FinancialProduct ; skos:definition "A bank account" ; - skos:exactMatch schema:BankAccount, + skos:exactMatch schema1:BankAccount, ; skos:inScheme linkml_common:financial . linkml_common:FoodRecipe a owl:Class ; rdfs:label "FoodRecipe" ; rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:steps ], + [ a owl:Restriction ; owl:allValuesFrom linkml_common:FoodIngredient ; owl:onProperty linkml_common:ingredients ], [ a owl:Restriction ; 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 . -linkml_common:GeoPointLocation a owl:Class ; - rdfs:label "GeoPointLocation" ; +linkml_common:FossilFuelPlant a owl:Class ; + rdfs:label "FossilFuelPlant" ; rdfs:subClassOf [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:longitude ], + owl:onProperty linkml_common:fuel ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:fuel ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:FossilFuel ; + owl:onProperty linkml_common:fuel ], + linkml_common:PowerPlant ; + skos:definition "A power plant that uses fossil fuels" ; + skos:inScheme linkml_common:energytechnology . + + a owl:Class ; + rdfs:label "COAL" ; + rdfs:subClassOf linkml_common:FossilFuelType, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "NATURAL_GAS" ; + rdfs:subClassOf linkml_common:FossilFuelType, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "PETROLEUM" ; + rdfs:subClassOf linkml_common:FossilFuelType, + linkml:PermissibleValue . + +linkml_common:GeoBoxLocation a owl:Class ; + rdfs:label "GeoBoxLocation" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:south_bounding_coordinate ], [ a owl:Restriction ; owl:allValuesFrom xsd:decimal ; - owl:onProperty linkml_common:altitude ], + owl:onProperty linkml_common:east_bounding_coordinate ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:east_bounding_coordinate ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:longitude ], + owl:onProperty linkml_common:east_bounding_coordinate ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:decimal ; + owl:onProperty linkml_common:west_bounding_coordinate ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:altitude ], + owl:onProperty linkml_common:west_bounding_coordinate ], [ a owl:Restriction ; owl:allValuesFrom xsd:decimal ; - owl:onProperty linkml_common:latitude ], + owl:onProperty linkml_common:north_bounding_coordinate ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:latitude ], + owl:onProperty linkml_common:north_bounding_coordinate ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:west_bounding_coordinate ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:north_bounding_coordinate ], [ a owl:Restriction ; owl:allValuesFrom xsd:decimal ; + owl:onProperty linkml_common:south_bounding_coordinate ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:south_bounding_coordinate ], + linkml_common:Location ; + skos:inScheme linkml_common:geography . + +linkml_common:GeoPointLocation a owl:Class ; + rdfs:label "GeoPointLocation" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; owl:onProperty linkml_common:longitude ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:decimal ; + owl:onProperty linkml_common:latitude ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:altitude ], [ a owl:Restriction ; owl:minCardinality 0 ; + owl:onProperty linkml_common:latitude ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:altitude ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:decimal ; + owl:onProperty linkml_common:longitude ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:latitude ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:longitude ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:decimal ; + owl:onProperty linkml_common:altitude ], linkml_common:PointLocation ; skos:inScheme linkml_common:geography . linkml_common:HealthcareConditionOccurrence a owl:Class ; rdfs:label "HealthcareConditionOccurrence" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Patient ; - owl:onProperty linkml_common:patient ], - [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml_common:HealthcareEncounter ; owl:onProperty linkml_common:observed_during ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:observed_during ], + owl:onProperty linkml_common:patient ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:HealthcareEncounter ; + owl:minCardinality 0 ; owl:onProperty linkml_common:observed_during ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:patient ], [ a owl:Restriction ; owl:maxCardinality 1 ; + owl:onProperty linkml_common:observed_during ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Patient ; owl:onProperty linkml_common:patient ], linkml_common:Event ; skos:exactMatch ; @@ -352,45 +504,49 @@ linkml_common:HealthcareConditionOccurrence a owl:Class ; linkml_common:HealthcareOrganization a owl:Class ; rdfs:label "HealthcareOrganization" ; rdfs:subClassOf linkml_common:Organization ; + skos:definition "An organization that provides healthcare services" ; skos:inScheme linkml_common:healthcare . +linkml_common:HydroelectricPlant a owl:Class ; + rdfs:label "HydroelectricPlant" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Landform ; + owl:onProperty linkml_common:dam ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:dam ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:dam ], + linkml_common:RenewablePlant ; + skos:definition "A hydroelectric power plant" ; + skos:inScheme linkml_common:energytechnology . + linkml_common:InformationEntity a owl:Class ; rdfs:label "InformationEntity" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Any ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:describes ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:describes ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml_common:Any ; owl:onProperty linkml_common:describes ], linkml_common:NamedThing ; skos:definition "An entity that describes some information" ; skos:inScheme linkml_common:core . -linkml_common:Landform a owl:Class ; - rdfs:label "Landform" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:geolocation ], - [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty linkml_common:geolocation ], - [ a owl:Restriction ; - 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" ; - skos:exactMatch , - ; - skos:inScheme linkml_common:geography . - linkml_common:LifeEvent a owl:Class ; rdfs:label "LifeEvent" ; rdfs:subClassOf linkml_common:Event ; skos:inScheme linkml_common:social . +linkml_common:Location a owl:Class ; + rdfs:label "Location" ; + rdfs:subClassOf linkml:ClassDefinition ; + skos:inScheme linkml_common:core . + linkml_common:MaterialCollection a owl:Class ; rdfs:label "MaterialCollection" ; rdfs:subClassOf linkml_common:PlannedProcess ; @@ -399,50 +555,84 @@ linkml_common:MaterialCollection a owl:Class ; linkml_common:Measurement a owl:Class ; rdfs:label "Measurement" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Quantity ; + owl:minCardinality 0 ; owl:onProperty linkml_common:quantity_measured ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml_common:Quantity ; owl:onProperty linkml_common:quantity_measured ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:variable_measured ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:Variable ; owl:onProperty linkml_common:variable_measured ], [ a owl:Restriction ; 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:variable_measured ], linkml_common:Observation ; skos:inScheme linkml_common:meaurements . -linkml_common:MoneyQuantity a owl:Class ; - rdfs:label "MoneyQuantity" ; +linkml_common:MiningFacility a owl:Class ; + rdfs:label "MiningFacility" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:unit ], + owl:allValuesFrom linkml_common:Quantity ; + owl:onProperty linkml_common:area ], [ a owl:Restriction ; - owl:allValuesFrom xsd:float ; - owl:onProperty linkml_common:value ], + owl:maxCardinality 1 ; + owl:onProperty linkml_common:area ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:value ], + owl:onProperty linkml_common:mining_method ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:CurrencyConcept ; - owl:onProperty linkml_common:unit ], + owl:minCardinality 0 ; + owl:onProperty linkml_common:depth ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:MiningMethod ; + owl:onProperty linkml_common:mining_method ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:depth ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:value ], + owl:onProperty linkml_common:mining_method ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Quantity ; + owl:onProperty linkml_common:depth ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:unit ], - linkml_common:Quantity ; - skos:definition "A quantity of money" ; - skos:exactMatch ; - skos:inScheme linkml_common:financial . + owl:onProperty linkml_common:area ], + linkml_common:ExtractiveIndustryFacility ; + skos:definition "A facility where mineral resources are extracted from the earth" ; + skos:inScheme linkml_common:extractiveindustry . + + a owl:Class ; + rdfs:label "IN_SITU" ; + rdfs:subClassOf linkml_common:MiningMethod, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "OPEN_PIT" ; + rdfs:subClassOf linkml_common:MiningMethod, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "PLACER" ; + rdfs:subClassOf linkml_common:MiningMethod, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "UNDERGROUND" ; + rdfs:subClassOf linkml_common:MiningMethod, + linkml:PermissibleValue . + +linkml_common:NuclearPlant a owl:Class ; + rdfs:label "NuclearPlant" ; + rdfs:subClassOf linkml_common:PowerPlant ; + skos:definition "A nuclear power plant" ; + skos:inScheme linkml_common:energytechnology . a owl:Class ; rdfs:label "UNKNOWN" ; @@ -452,44 +642,50 @@ linkml_common:MoneyQuantity a owl:Class ; linkml_common:Publication a owl:Class ; rdfs:label "Publication" ; rdfs:subClassOf linkml_common:CreativeWork ; - skos:inScheme linkml_common:financial . + skos:inScheme linkml_common:bibliographic . linkml_common:QuantityRange a owl:Class ; rdfs:label "QuantityRange" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:upper_bound ], + owl:minCardinality 0 ; + owl:onProperty linkml_common:lower_bound ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:lower_bound ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:upper_bound ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml_common:Quantity ; owl:onProperty linkml_common:lower_bound ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Quantity ; + owl:minCardinality 0 ; owl:onProperty linkml_common:upper_bound ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:Quantity ; - owl:onProperty linkml_common:lower_bound ], + owl:onProperty linkml_common:upper_bound ], linkml_common:Intangible ; skos:definition "A quantity range is a property that can be measured or counted" ; skos:exactMatch ; skos:inScheme linkml_common:quantities . +linkml_common:QuarryFacility a owl:Class ; + rdfs:label "QuarryFacility" ; + rdfs:subClassOf linkml_common:ExtractiveIndustryFacility ; + skos:definition "A facility where stone, sand, or gravel are extracted from the earth" ; + skos:inScheme linkml_common:extractiveindustry . + linkml_common:Ratio a owl:Class ; rdfs:label "Ratio" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Quantity ; - owl:onProperty linkml_common:denominator ], + owl:minCardinality 0 ; + owl:onProperty linkml_common:numerator ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:Quantity ; - owl:onProperty linkml_common:numerator ], + owl:onProperty linkml_common:denominator ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:numerator ], + owl:maxCardinality 1 ; + owl:onProperty linkml_common:denominator ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:numerator ], @@ -497,8 +693,8 @@ linkml_common:Ratio a owl:Class ; owl:minCardinality 0 ; owl:onProperty linkml_common:denominator ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:denominator ], + owl:allValuesFrom linkml_common:Quantity ; + owl:onProperty linkml_common:numerator ], linkml_common:Quantity ; skos:definition "A tuple of two quantities" ; skos:exactMatch ; @@ -527,22 +723,22 @@ linkml_common:RawMaterial a owl:Class ; linkml_common:SampleCollectionProcess a owl:Class ; rdfs:label "SampleCollectionProcess" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml_common:NamedThing ; owl:onProperty linkml_common:collected_from ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:collected_from ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; owl:onProperty linkml_common:material_collected ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:NamedThing ; + owl:minCardinality 0 ; owl:onProperty linkml_common:collected_from ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml_common:SampleMaterial ; owl:onProperty linkml_common:material_collected ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:SampleMaterial ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:collected_from ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:material_collected ], linkml_common:InvestigativeProcess ; skos:exactMatch ; @@ -553,61 +749,100 @@ linkml_common:SampleProcessing a owl:Class ; rdfs:subClassOf linkml_common:MaterialProcessing ; skos:inScheme linkml_common:investigations . -linkml_common:SimpleQuantity a owl:Class ; - rdfs:label "SimpleQuantity" ; +linkml_common:SolarPlant a owl:Class ; + rdfs:label "SolarPlant" ; + rdfs:subClassOf linkml_common:RenewablePlant ; + skos:definition "A solar power plant" ; + skos:inScheme linkml_common:energytechnology . + +linkml_common:StudyDesign a owl:Class ; + rdfs:label "StudyDesign" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:unit ], - [ a owl:Restriction ; - 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:maxCardinality 1 ; - owl:onProperty linkml_common:unit ], + owl:onProperty linkml_common:classification ], [ a owl:Restriction ; - owl:allValuesFrom xsd:float ; - owl:onProperty linkml_common:value ], + owl:minCardinality 0 ; + owl:onProperty linkml_common:classification ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:value ], - linkml_common:Quantity ; - skos:definition "A quantity is a property that can be measured or counted" ; - skos:exactMatch , - ; - skos:inScheme linkml_common:quantities . - -linkml_common:StudyDesign a owl:Class ; - rdfs:label "StudyDesign" ; - rdfs:subClassOf linkml_common:Procedure ; + owl:allValuesFrom owl:Thing ; + owl:onProperty linkml_common:classification ], + 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:minCardinality 0 ; owl:onProperty linkml_common:relative_to ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml_common:RelativeTimeEnum ; 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: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:allValuesFrom linkml_common:RelativeTimeEnum ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:relative_to ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:predicate ], linkml_common:Relationship ; skos:definition "A relationship to another time point" ; skos:inScheme linkml_common:time . +linkml_common:WellFacility a owl:Class ; + rdfs:label "WellFacility" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml_common:WellType ; + owl:onProperty linkml_common:well_type ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Quantity ; + owl:onProperty linkml_common:depth ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:well_type ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:depth ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:well_type ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:depth ], + linkml_common:ExtractiveIndustryFacility ; + skos:definition "A facility where fluid resources (e.g., oil, gas, water) are extracted from the earth" ; + skos:inScheme linkml_common:extractiveindustry . + + a owl:Class ; + rdfs:label "GAS" ; + rdfs:subClassOf linkml_common:WellType, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "INJECTION" ; + rdfs:subClassOf linkml_common:WellType, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "OIL" ; + rdfs:subClassOf linkml_common:WellType, + linkml:PermissibleValue . + + a owl:Class ; + rdfs:label "WATER" ; + rdfs:subClassOf linkml_common:WellType, + linkml:PermissibleValue . + +linkml_common:WindFarm a owl:Class ; + rdfs:label "WindFarm" ; + rdfs:subClassOf linkml_common:RenewablePlant ; + skos:definition "A wind farm" ; + skos:inScheme linkml_common:energytechnology . + linkml_common:allowed_units a owl:ObjectProperty ; rdfs:label "allowed_units" ; skos:definition "The units that are allowed for this variable" ; @@ -661,6 +896,14 @@ linkml_common:parts a owl:ObjectProperty ; skos:definition "The parts of the process" ; skos:inScheme linkml_common:core . +linkml_common:plants a owl:ObjectProperty ; + rdfs:label "plants" ; + skos:inScheme linkml_common:energytechnology . + +linkml_common:products a owl:ObjectProperty ; + rdfs:label "products" ; + skos:inScheme linkml_common:extractiveindustry . + linkml_common:steps a owl:ObjectProperty ; rdfs:label "steps" ; skos:inScheme linkml_common:foods . @@ -669,17 +912,36 @@ linkml_common:variables a owl:ObjectProperty ; rdfs:label "variables" ; skos:inScheme linkml_common:investigations . +linkml_common:Building a owl:Class ; + rdfs:label "Building" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:located_at_place ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:located_at_place ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Place ; + owl:onProperty linkml_common:located_at_place ], + linkml_common:Facility ; + skos:inScheme linkml_common:civilengineering . + +linkml_common:BuiltSystem a owl:Class ; + rdfs:label "BuiltSystem" ; + rdfs:subClassOf linkml_common:BuiltEnvironmentFeature ; + skos:inScheme linkml_common:civilengineering . + linkml_common:ClinicalCohort a owl:Class ; rdfs:label "ClinicalCohort" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml_common:ClinicalCohortDefinition ; - owl:onProperty linkml_common:definition ], - [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:definition ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:definition ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:ClinicalCohortDefinition ; + 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 . @@ -700,31 +962,64 @@ linkml_common:CurrencyConcept a owl:Class ; linkml_common:EngineeringProcess a owl:Class ; rdfs:label "EngineeringProcess" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml_common:EngineeringSpecification ; - owl:onProperty linkml_common:follows_procedure ], - [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:part_of ], + owl:onProperty linkml_common:follows_procedure ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml_common:EngineeringSpecification ; owl:onProperty linkml_common:follows_procedure ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:EngineeringProcess ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:part_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; 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:allValuesFrom linkml_common:EngineeringProcess ; owl:onProperty linkml_common:part_of ], linkml_common:Event ; skos:inScheme linkml_common:engineering . -linkml_common:EngineeringSpecification a owl:Class ; - rdfs:label "EngineeringSpecification" ; - rdfs:subClassOf linkml_common:Procedure ; +linkml_common:Equipment a owl:Class ; + rdfs:label "Equipment" ; + rdfs:subClassOf linkml_common:NamedThing ; skos:inScheme linkml_common:engineering . +linkml_common:ExtractiveIndustryProduct a owl:Class ; + rdfs:label "ExtractiveIndustryProduct" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:processing_method ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:grade ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:EngineeringSpecification ; + owl:onProperty linkml_common:processing_method ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:product_type ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:SimpleQuantity ; + owl:onProperty linkml_common:grade ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:processing_method ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:ExtractiveIndustryProductType ; + owl:onProperty linkml_common:product_type ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:product_type ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:grade ], + linkml_common:Concept ; + skos:definition "A product extracted from an extractive industry facility" ; + skos:inScheme linkml_common:extractiveindustry . + linkml_common:FinancialProduct a owl:Class ; rdfs:label "FinancialProduct" ; rdfs:subClassOf linkml_common:Service ; @@ -741,49 +1036,60 @@ linkml_common:FoodProcessing a owl:Class ; rdfs:subClassOf linkml_common:MaterialProcessing ; skos:inScheme linkml_common:foods . +linkml_common:FossilFuel a owl:Class ; + rdfs:label "FossilFuel" ; + rdfs:subClassOf linkml_common:Concept ; + skos:definition "A type of fossil fuel" ; + skos:inScheme linkml_common:energytechnology . + +linkml_common:FossilFuelType a owl:Class ; + rdfs:subClassOf linkml:EnumDefinition ; + owl:unionOf ( ) ; + linkml:permissible_values , + , + . + linkml_common:HealthcareEncounter a owl:Class ; rdfs:label "HealthcareEncounter" ; rdfs:subClassOf [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:provider ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:subtype ], + owl:allValuesFrom linkml_common:HealthcareEncounterClassification ; + owl:onProperty linkml_common:classification ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:patient ], + owl:onProperty linkml_common:classification ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:patient ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:patient ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:subtype ], + owl:onProperty linkml_common:classification ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Patient ; + owl:onProperty linkml_common:patient ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:HealthcareProvider ; owl:onProperty linkml_common:provider ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:provider ], - [ a owl:Restriction ; - owl:allValuesFrom linkml_common:HealthcareEncounterClassification ; - owl:onProperty linkml_common:subtype ], - [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Patient ; - owl:onProperty linkml_common:patient ], linkml_common:Event ; + skos:definition "An interaction between a patient and one or more healthcare providers" ; skos:exactMatch ; skos:inScheme linkml_common:healthcare . 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:maxCardinality 1 ; owl:onProperty linkml_common:care_site ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Concept ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:speciality ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:HealthcareSite ; @@ -794,6 +1100,9 @@ linkml_common:HealthcareProvider a owl:Class ; [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:speciality ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Concept ; + owl:onProperty linkml_common:speciality ], linkml_common:HealthcareRole ; skos:inScheme linkml_common:healthcare . @@ -805,32 +1114,67 @@ linkml_common:HealthcareSite a owl:Class ; linkml_common:InvestigativeProtocol a owl:Class ; rdfs:label "InvestigativeProtocol" ; - rdfs:subClassOf linkml_common:Procedure ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:classification ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:anyURI ; + owl:onProperty linkml_common:protocols_io_url ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:protocols_io_url ], + [ a owl:Restriction ; + owl:allValuesFrom owl:Thing ; + owl:onProperty linkml_common:classification ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:classification ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:protocols_io_url ], + linkml_common:Procedure ; skos:inScheme linkml_common:investigations . +linkml_common:Landform a owl:Class ; + rdfs:label "Landform" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:geolocation ], + [ a owl:Restriction ; + owl:allValuesFrom owl:Thing ; + owl:onProperty linkml_common:geolocation ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:geolocation ], + linkml_common:Place ; + skos:definition "A natural feature of the solid surface of the Earth or other planetary body" ; + skos:exactMatch , + ; + skos:inScheme linkml_common:geography . + linkml_common:MathematicalOperation a owl:Class ; rdfs:label "MathematicalOperation" ; rdfs:subClassOf [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:outputs ], + owl:onProperty linkml_common:immediate_preceding_steps ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:MathematicalOperation ; owl:onProperty linkml_common:immediate_preceding_steps ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:outputs ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:MathematicalOperation ; owl:onProperty linkml_common:parts ], [ a owl:Restriction ; owl:minCardinality 0 ; 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:minCardinality 0 ; owl:onProperty linkml_common:parts ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Any ; + owl:onProperty linkml_common:outputs ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:Any ; owl:onProperty linkml_common:inputs ], @@ -849,6 +1193,12 @@ linkml_common:PhysicalDevice a owl:Class ; rdfs:subClassOf linkml_common:NamedThing ; skos:inScheme linkml_common:core . +linkml_common:PowerPlantType a owl:Class ; + rdfs:label "PowerPlantType" ; + rdfs:subClassOf linkml_common:Concept ; + skos:definition "The type of power plant" ; + skos:inScheme linkml_common:energytechnology . + linkml_common:QuantityKind a owl:Class ; rdfs:label "QuantityKind" ; rdfs:subClassOf linkml_common:Concept ; @@ -866,7 +1216,7 @@ linkml_common:Role a owl:Class ; rdfs:label "Role" ; rdfs:subClassOf linkml_common:Intangible ; skos:closeMatch ; - skos:exactMatch schema:Role ; + skos:exactMatch schema1:Role ; skos:inScheme linkml_common:core . linkml_common:SampleMaterial a owl:Class ; @@ -878,7 +1228,7 @@ 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:exactMatch schema1:Service ; skos:inScheme linkml_common:social . linkml_common:Specification a owl:Class ; @@ -919,6 +1269,14 @@ linkml_common:altitude a owl:DatatypeProperty ; skos:definition "The altitude of the location" ; skos:inScheme linkml_common:geography . +linkml_common:annual_production a owl:ObjectProperty ; + rdfs:label "annual_production" ; + skos:inScheme linkml_common:extractiveindustry . + +linkml_common:area a owl:ObjectProperty ; + rdfs:label "area" ; + skos:inScheme linkml_common:extractiveindustry . + linkml_common:bank a owl:ObjectProperty ; rdfs:label "bank" ; skos:definition "The bank that holds the account" ; @@ -930,6 +1288,21 @@ linkml_common:birth_date a owl:DatatypeProperty ; skos:definition "Date on which a person is born" ; skos:inScheme linkml_common:social . +linkml_common:bounding_coordinates a owl:ObjectProperty ; + rdfs:label "bounding_coordinates" ; + rdfs:range linkml_common:GeoBoxLocation ; + skos:definition "The bounding coordinates of the place" ; + skos:inScheme linkml_common:geography . + +linkml_common:capacity a owl:ObjectProperty ; + rdfs:label "capacity" ; + skos:inScheme linkml_common:energytechnology . + +linkml_common:capex a owl:ObjectProperty ; + rdfs:label "capex" ; + skos:definition "Capital expenditure for the plant" ; + skos:inScheme linkml_common:energytechnology . + linkml_common:care_site a owl:ObjectProperty ; rdfs:label "care_site" ; skos:inScheme linkml_common:healthcare . @@ -947,11 +1320,20 @@ linkml_common:collected_from a owl:ObjectProperty ; rdfs:label "collected_from" ; skos:inScheme linkml_common:investigations . +linkml_common:commissioning_date a owl:DatatypeProperty ; + rdfs:label "commissioning_date" ; + skos:inScheme linkml_common:energytechnology . + linkml_common:country a owl:DatatypeProperty ; rdfs:label "country" ; skos:definition "The country" ; skos:inScheme linkml_common:geography . +linkml_common:dam a owl:ObjectProperty ; + rdfs:label "dam" ; + skos:definition "The dam used by the hydroelectric plant" ; + skos:inScheme linkml_common:energytechnology . + linkml_common:date_value a owl:DatatypeProperty ; rdfs:label "date_value" ; rdfs:range xsd:date ; @@ -962,6 +1344,10 @@ linkml_common:datetime_value a owl:DatatypeProperty ; rdfs:range xsd:dateTime ; skos:inScheme linkml_common:time . +linkml_common:decommissioning_date a owl:DatatypeProperty ; + rdfs:label "decommissioning_date" ; + skos:inScheme linkml_common:energytechnology . + linkml_common:definition a owl:ObjectProperty ; rdfs:label "definition" ; skos:inScheme linkml_common:clinicalresearch . @@ -977,6 +1363,23 @@ linkml_common:describes a owl:ObjectProperty ; skos:definition "The thing that is being described" ; skos:inScheme linkml_common:core . +linkml_common:east_bounding_coordinate a owl:DatatypeProperty ; + rdfs:label "east_bounding_coordinate" ; + skos:definition "The easternmost coordinate of the location" ; + skos:inScheme linkml_common:geography . + +linkml_common:facility_type a owl:ObjectProperty ; + rdfs:label "facility_type" ; + skos:inScheme linkml_common:extractiveindustry . + +linkml_common:fuel a owl:ObjectProperty ; + rdfs:label "fuel" ; + skos:inScheme linkml_common:energytechnology . + +linkml_common:grade a owl:ObjectProperty ; + rdfs:label "grade" ; + skos:inScheme linkml_common:extractiveindustry . + linkml_common:happens_at a owl:ObjectProperty ; rdfs:label "happens_at" ; rdfs:range linkml_common:TimePoint ; @@ -1012,6 +1415,10 @@ linkml_common:latitude a owl:DatatypeProperty ; skos:definition "The latitude of the location" ; skos:inScheme linkml_common:geography . +linkml_common:location a owl:ObjectProperty ; + rdfs:label "location" ; + skos:inScheme linkml_common:energytechnology . + linkml_common:longitude a owl:DatatypeProperty ; rdfs:label "longitude" ; skos:definition "The longitude of the location" ; @@ -1031,11 +1438,20 @@ linkml_common:material_collected a owl:ObjectProperty ; rdfs:label "material_collected" ; skos:inScheme linkml_common:investigations . +linkml_common:mining_method a owl:ObjectProperty ; + rdfs:label "mining_method" ; + skos:inScheme linkml_common:extractiveindustry . + linkml_common:name a owl:DatatypeProperty ; rdfs:label "name" ; skos:definition "A human-readable name for a thing" ; skos:inScheme linkml_common:core . +linkml_common:north_bounding_coordinate a owl:DatatypeProperty ; + rdfs:label "north_bounding_coordinate" ; + skos:definition "The northernmost coordinate of the location" ; + skos:inScheme linkml_common:geography . + linkml_common:numerator a owl:ObjectProperty ; rdfs:label "numerator" ; skos:definition "The numerator of the ratio" ; @@ -1050,6 +1466,15 @@ linkml_common:observed_during a owl:ObjectProperty ; skos:exactMatch ; skos:inScheme linkml_common:healthcare . +linkml_common:opex a owl:ObjectProperty ; + rdfs:label "opex" ; + skos:definition "Operating expense for the plant" ; + skos:inScheme linkml_common:energytechnology . + +linkml_common:plant_type a owl:ObjectProperty ; + rdfs:label "plant_type" ; + skos:inScheme linkml_common:energytechnology . + linkml_common:postal_code a owl:DatatypeProperty ; rdfs:label "postal_code" ; skos:definition "The postal code or zip code" ; @@ -1065,6 +1490,22 @@ linkml_common:primary_email a owl:DatatypeProperty ; skos:definition "The main email address of a person" ; skos:inScheme linkml_common:social . +linkml_common:processing_method a owl:ObjectProperty ; + rdfs:label "processing_method" ; + skos:inScheme linkml_common:extractiveindustry . + +linkml_common:product_type a owl:ObjectProperty ; + rdfs:label "product_type" ; + skos:inScheme linkml_common:extractiveindustry . + +linkml_common:production_capacity a owl:ObjectProperty ; + rdfs:label "production_capacity" ; + skos:inScheme linkml_common:extractiveindustry . + +linkml_common:protocols_io_url a owl:DatatypeProperty ; + rdfs:label "protocols_io_url" ; + skos:inScheme linkml_common:investigations . + linkml_common:provider a owl:ObjectProperty ; rdfs:label "provider" ; skos:inScheme linkml_common:healthcare . @@ -1078,11 +1519,20 @@ linkml_common:relative_to a owl:ObjectProperty ; rdfs:label "relative_to" ; skos:inScheme linkml_common:time . +linkml_common:reserves a owl:ObjectProperty ; + rdfs:label "reserves" ; + skos:inScheme linkml_common:extractiveindustry . + 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:south_bounding_coordinate a owl:DatatypeProperty ; + rdfs:label "south_bounding_coordinate" ; + skos:definition "The southernmost coordinate of the location" ; + skos:inScheme linkml_common:geography . + linkml_common:speciality a owl:ObjectProperty ; rdfs:label "speciality" ; skos:inScheme linkml_common:healthcare . @@ -1134,67 +1584,81 @@ linkml_common:vital_status a owl:ObjectProperty ; skos:definition "living or dead status" ; skos:inScheme linkml_common:social . +linkml_common:well_type a owl:ObjectProperty ; + rdfs:label "well_type" ; + skos:inScheme linkml_common:extractiveindustry . + +linkml_common:west_bounding_coordinate a owl:DatatypeProperty ; + rdfs:label "west_bounding_coordinate" ; + skos:definition "The westernmost coordinate of the location" ; + skos:inScheme linkml_common:geography . + linkml_common:year_value a owl:DatatypeProperty ; rdfs:label "year_value" ; rdfs:range xsd:integer ; skos:inScheme linkml_common:time . +linkml_common:BuiltEnvironmentFeature a owl:Class ; + rdfs:label "BuiltEnvironmentFeature" ; + rdfs:subClassOf linkml_common:NamedThing ; + skos:inScheme linkml_common:civilengineering . + linkml_common:CreativeWork a owl:Class ; rdfs:label "CreativeWork" ; rdfs:subClassOf [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:rights ], + owl:onProperty linkml_common:contacts ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Agent ; + owl:onProperty linkml_common:contributors ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:abstract ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:rights ], + owl:onProperty linkml_common:title ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:title ], + owl:onProperty linkml_common:contributors ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:abstract ], - [ a owl:Restriction ; - owl:allValuesFrom xsd:string ; - owl:onProperty linkml_common:abstract ], + owl:onProperty linkml_common:rights ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:contacts ], - [ a owl:Restriction ; - owl:allValuesFrom xsd:string ; - owl:onProperty linkml_common:rights ], + owl:onProperty linkml_common:creators ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:Agent ; - owl:onProperty linkml_common:contacts ], + owl:onProperty linkml_common:creators ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:title ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:contributors ], + owl:allValuesFrom xsd:string ; + owl:onProperty linkml_common:keywords ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:creators ], + owl:maxCardinality 1 ; + owl:onProperty linkml_common:abstract ], [ a owl:Restriction ; - owl:allValuesFrom xsd:string ; - owl:onProperty linkml_common:title ], + owl:allValuesFrom linkml_common:Agent ; + owl:onProperty linkml_common:contacts ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:rights ], [ a owl:Restriction ; owl:allValuesFrom xsd:string ; - owl:onProperty linkml_common:keywords ], + owl:onProperty linkml_common:rights ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Agent ; - owl:onProperty linkml_common:contributors ], + owl:minCardinality 0 ; + owl:onProperty linkml_common:abstract ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:Agent ; - owl:onProperty linkml_common:creators ], + owl:allValuesFrom xsd:string ; + owl:onProperty linkml_common:abstract ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:keywords ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:string ; + owl:onProperty linkml_common:title ], linkml_common:NamedThing ; skos:definition "The most generic kind of creative work, including books, movies, photographs, software programs, etc." ; - skos:exactMatch schema:CreativeWork ; + skos:exactMatch schema1:CreativeWork ; skos:inScheme linkml_common:social . linkml_common:Duration a owl:Class ; @@ -1203,6 +1667,32 @@ linkml_common:Duration a owl:Class ; skos:definition "A length of time" ; skos:inScheme linkml_common:time . +linkml_common:EngineeringSpecification a owl:Class ; + rdfs:label "EngineeringSpecification" ; + rdfs:subClassOf linkml_common:Procedure ; + skos:inScheme linkml_common:engineering . + +linkml_common:ExtractiveIndustryFacilityType a owl:Class ; + rdfs:subClassOf linkml:EnumDefinition ; + owl:unionOf ( ) ; + linkml:permissible_values , + , + . + +linkml_common:Facility a owl:Class ; + rdfs:label "Facility" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Place ; + owl:onProperty linkml_common:located_at_place ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:located_at_place ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:located_at_place ], + linkml_common:BuiltEnvironmentFeature ; + skos:inScheme linkml_common:civilengineering . + linkml_common:FoodTypeConcept a owl:Class ; rdfs:label "FoodTypeConcept" ; rdfs:subClassOf linkml_common:Concept ; @@ -1225,16 +1715,16 @@ linkml_common:HealthcareRole a owl:Class ; 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:allValuesFrom xsd:string ; owl:onProperty linkml_common:objectives ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:objectives ], [ a owl:Restriction ; - owl:allValuesFrom xsd:string ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:variables ], + [ a owl:Restriction ; + owl:minCardinality 0 ; owl:onProperty linkml_common:objectives ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:Variable ; @@ -1245,112 +1735,118 @@ linkml_common:Investigation a owl:Class ; linkml_common:InvestigativeProcess a owl:Class ; rdfs:label "InvestigativeProcess" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml_common:follows_procedure ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:part_of ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:Investigation ; owl:onProperty linkml_common:part_of ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml_common:InvestigativeProtocol ; + owl:onProperty linkml_common:follows_procedure ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:part_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:InvestigativeProtocol ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:follows_procedure ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:follows_procedure ], + owl:onProperty linkml_common:part_of ], 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:MoneyQuantity a owl:Class ; + rdfs:label "MoneyQuantity" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:value ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:value ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:unit ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:CurrencyConcept ; + owl:onProperty linkml_common:unit ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:unit ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:float ; + owl:onProperty linkml_common:value ], + linkml_common:SimpleQuantity ; + skos:definition "A quantity of money" ; + skos:exactMatch ; + skos:inScheme linkml_common:financial . 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:age_in_years ], + owl:allValuesFrom xsd:date ; + owl:onProperty linkml_common:birth_date ], [ 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 ], + 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:vital_status ], + owl:onProperty linkml_common:birth_date ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml_common:primary_email ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:birth_date ], + owl:maxCardinality 1 ; + owl:onProperty linkml_common:age_in_years ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:vital_status ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml_common:age_in_years ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:PersonStatus ; + owl:onProperty linkml_common:vital_status ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:primary_email ], + owl:onProperty linkml_common:vital_status ], [ a owl:Restriction ; - owl:allValuesFrom [ a rdfs:Datatype ; - owl:onDatatype xsd:string ; - owl:withRestrictions ( [ xsd:pattern "^\\S+@[\\S+\\.]+\\S+" ] ) ] ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:primary_email ], linkml_common:Agent ; skos:definition "Represents a Person" ; - skos:exactMatch schema:Person ; + skos:exactMatch schema1:Person ; skos:inScheme linkml_common:social . linkml_common:PostalAddress a owl:Class ; rdfs:label "PostalAddress" ; rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:city ], + [ a owl:Restriction ; owl:allValuesFrom xsd:string ; owl:onProperty linkml_common:country ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:country ], + owl:onProperty linkml_common:postal_code ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:country ], - [ a owl:Restriction ; - owl:allValuesFrom xsd:string ; - owl:onProperty linkml_common:street_address_additional ], - [ a owl:Restriction ; - owl:allValuesFrom xsd:string ; - owl:onProperty linkml_common:city ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:state ], - [ a owl:Restriction ; - owl:minCardinality 0 ; owl:onProperty linkml_common:city ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:postal_code ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:postal_code ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:street_address_additional ], - [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom xsd:string ; owl:onProperty linkml_common:street_address ], [ a owl:Restriction ; owl:minCardinality 0 ; @@ -1359,24 +1855,36 @@ linkml_common:PostalAddress a owl:Class ; owl:allValuesFrom xsd:string ; owl:onProperty linkml_common:state ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:city ], + owl:minCardinality 0 ; + owl:onProperty linkml_common:street_address_additional ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:street_address ], + owl:onProperty linkml_common:street_address_additional ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:street_address_additional ], + owl:onProperty linkml_common:state ], [ 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_additional ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:string ; + owl:onProperty linkml_common:city ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:country ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:street_address ], + [ a owl:Restriction ; + owl:minCardinality 0 ; owl:onProperty linkml_common:street_address ], linkml_common:Entity ; skos:definition "Represents an Address" ; skos:exactMatch , - schema:PostalAddress ; + schema1:PostalAddress ; skos:inScheme linkml_common:geography . linkml_common:RelativeTimeEnum a owl:Class ; @@ -1389,12 +1897,6 @@ linkml_common:RelativeTimeEnum a owl:Class ; linkml_common:TimePointOrTemporalInterval a owl:Class ; rdfs:label "TimePointOrTemporalInterval" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - 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 ; @@ -1403,9 +1905,15 @@ linkml_common:TimePointOrTemporalInterval a owl:Class ; [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:starts_at ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:ends_at ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:TimePoint ; owl:onProperty linkml_common:ends_at ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:ends_at ], linkml_common:Intangible ; skos:inScheme linkml_common:time . @@ -1435,11 +1943,76 @@ linkml_common:outputs a owl:ObjectProperty ; skos:definition "The outputs of the operation" ; skos:inScheme linkml_common:core . +linkml_common:ExtractiveIndustryFacility a owl:Class ; + rdfs:label "ExtractiveIndustryFacility" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Quantity ; + owl:onProperty linkml_common:annual_production ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:reserves ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:operator ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:annual_production ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:operator ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:products ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:production_capacity ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Quantity ; + owl:onProperty linkml_common:production_capacity ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:production_capacity ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:ExtractiveIndustryProduct ; + owl:onProperty linkml_common:products ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:ExtractiveIndustryFacilityType ; + owl:onProperty linkml_common:facility_type ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:facility_type ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:facility_type ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:reserves ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Quantity ; + owl:onProperty linkml_common:reserves ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:annual_production ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Organization ; + owl:onProperty linkml_common:operator ], + linkml_common:Facility ; + skos:definition "A facility where natural resources are extracted from the earth" ; + skos:inScheme linkml_common:extractiveindustry . + linkml_common:MaterialProcessing a owl:Class ; rdfs:label "MaterialProcessing" ; rdfs:subClassOf linkml_common:PlannedProcess ; skos:inScheme linkml_common:plannedprocess . +linkml_common:MiningMethod a owl:Class ; + rdfs:subClassOf linkml:EnumDefinition ; + owl:unionOf ( ) ; + linkml:permissible_values , + , + , + . + linkml_common:Patient a owl:Class ; rdfs:label "Patient" ; rdfs:subClassOf linkml_common:HealthcareRole ; @@ -1452,31 +2025,6 @@ 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 ; @@ -1484,54 +2032,181 @@ linkml_common:PlannedProcess a owl:Class ; owl:onProperty linkml_common:follows_procedure ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:uses_physical_device ], + owl:onProperty linkml_common:follows_procedure ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:PhysicalDevice ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:uses_physical_device ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml_common:PhysicalDevice ; owl:onProperty linkml_common:uses_physical_device ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:follows_procedure ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:follows_procedure ], + owl:minCardinality 0 ; + owl:onProperty linkml_common:uses_physical_device ], linkml_common:Event ; skos:definition "A process that follows a defined procedure or plan" ; skos:exactMatch ; skos:inScheme linkml_common:plannedprocess . +linkml_common:RenewablePlant a owl:Class ; + rdfs:label "RenewablePlant" ; + rdfs:subClassOf linkml_common:PowerPlant ; + skos:definition "A power plant that uses renewable energy sources" ; + skos:inScheme linkml_common:energytechnology . + +linkml_common:SimpleQuantity a owl:Class ; + rdfs:label "SimpleQuantity" ; + rdfs:subClassOf [ a owl:Restriction ; + 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 xsd:float ; + owl:onProperty linkml_common:value ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:unit ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:unit ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:value ], + linkml_common:Quantity ; + skos:definition "A quantity is a property that can be measured or counted" ; + skos:exactMatch , + ; + skos:inScheme linkml_common:quantities . + 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:allValuesFrom linkml_common:TimePoint ; owl:onProperty linkml_common:starts_at ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:ends_at ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:starts_at ], + owl:minCardinality 0 ; + owl:onProperty linkml_common:ends_at ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:TimePoint ; + owl:minCardinality 0 ; owl:onProperty linkml_common:starts_at ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:ends_at ], + owl:onProperty linkml_common:starts_at ], linkml_common:TimePointOrTemporalInterval ; skos:definition "A period of time" ; skos:inScheme linkml_common:time . +linkml_common:WellType a owl:Class ; + rdfs:subClassOf linkml:EnumDefinition ; + owl:unionOf ( ) ; + linkml:permissible_values , + , + , + . + linkml_common:Any a owl:Class ; rdfs:label "Any" ; rdfs:subClassOf linkml:ClassDefinition ; skos:exactMatch linkml:Any ; skos:inScheme linkml_common:core . +linkml_common:Organization a owl:Class ; + rdfs:label "Organization" ; + rdfs:subClassOf linkml_common:Agent ; + skos:definition "Represents an Organization" ; + skos:exactMatch schema1:Organization ; + skos:inScheme linkml_common:social . + +linkml_common:PowerPlant a owl:Class ; + rdfs:label "PowerPlant" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:opex ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:capex ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:date ; + owl:onProperty linkml_common:decommissioning_date ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Organization ; + owl:onProperty linkml_common:operator ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:decommissioning_date ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:capex ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:SimpleQuantity ; + owl:onProperty linkml_common:capacity ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:commissioning_date ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:operator ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:capacity ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:decommissioning_date ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:commissioning_date ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Place ; + owl:onProperty linkml_common:location ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:opex ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:operator ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:date ; + owl:onProperty linkml_common:commissioning_date ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:plant_type ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:location ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:plant_type ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:capacity ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:location ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:PowerPlantType ; + owl:onProperty linkml_common:plant_type ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:MoneyQuantity ; + owl:onProperty linkml_common:capex ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:MoneyQuantity ; + owl:onProperty linkml_common:opex ], + linkml_common:Building ; + skos:definition "A facility for generating electrical power" ; + skos:inScheme linkml_common:energytechnology . + +linkml_common:depth a owl:ObjectProperty . + linkml_common:description a owl:DatatypeProperty ; rdfs:label "description" ; skos:definition "A human-readable description for a thing" ; @@ -1543,13 +2218,15 @@ linkml_common:geolocation a owl:ObjectProperty ; skos:definition "The geolocation of the place" ; skos:inScheme linkml_common:geography . -linkml_common:part_of a owl:ObjectProperty . +linkml_common:located_at_place a owl:ObjectProperty ; + rdfs:label "located_at_place" ; + rdfs:range linkml_common:Place ; + skos:definition "The place where the entity is located" ; + skos:inScheme linkml_common:geography . -linkml_common:subtype a owl:DatatypeProperty ; - rdfs:label "subtype" ; - rdfs:range xsd:string ; - skos:definition "An enum with a more specific type" ; - skos:inScheme linkml_common:core . +linkml_common:operator a owl:ObjectProperty . + +linkml_common:part_of a owl:ObjectProperty . linkml_common:unit a owl:ObjectProperty . @@ -1565,33 +2242,72 @@ linkml_common:Agent a owl:Class ; rdfs:label "Agent" ; rdfs:subClassOf linkml_common:NamedThing ; skos:definition "Represents an Agent" ; - skos:exactMatch , + skos:exactMatch prov:Agent, ; skos:inScheme linkml_common:social . -linkml_common:Concept a owl:Class ; - rdfs:label "Concept" ; - rdfs:subClassOf linkml_common:NamedThing ; - skos:exactMatch , - biolink:OntologyClass ; - skos:inScheme linkml_common:core . - linkml_common:Entity a owl:Class ; rdfs:label "Entity" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom xsd:string ; owl:onProperty linkml_common:type ], [ a owl:Restriction ; - owl:allValuesFrom xsd:string ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:type ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:type ], linkml:ClassDefinition ; skos:definition "A physical, digital, conceptual, or other kind of thing with some common characteristics" ; - skos:exactMatch schema:Thing ; + skos:exactMatch schema1:Thing ; skos:inScheme linkml_common:core . +linkml_common:ExtractiveIndustryProductType a owl:Class ; + rdfs:subClassOf linkml:EnumDefinition ; + owl:unionOf ( ) ; + linkml:permissible_values , + , + , + , + , + , + , + . + +linkml_common:Place a owl:Class ; + rdfs:label "Place" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml_common:GeoPointLocation ; + owl:onProperty linkml_common:geolocation ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:geolocation ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:bounding_coordinates ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:address ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:PostalAddress ; + owl:onProperty linkml_common:address ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:geolocation ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:bounding_coordinates ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:GeoBoxLocation ; + owl:onProperty linkml_common:bounding_coordinates ], + [ 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 schema1:Place ; + skos:inScheme linkml_common:geography . + linkml_common:ends_at a owl:ObjectProperty ; rdfs:label "ends_at" ; rdfs:range linkml_common:TimePoint ; @@ -1610,53 +2326,53 @@ 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:exactMatch schema1: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: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:maxCardinality 1 ; - owl:onProperty linkml_common:ends_at ], + owl:allValuesFrom linkml_common:TemporalInterval ; + owl:onProperty linkml_common:has_interval ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:ends_at ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:TimePoint ; + owl:onProperty linkml_common:ends_at ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:starts_at ], + 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:has_interval ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:TemporalInterval ; - owl:onProperty linkml_common:has_interval ], + owl:maxCardinality 1 ; + owl:onProperty linkml_common:has_duration ], [ 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:allValuesFrom linkml_common:TimePoint ; + owl:onProperty linkml_common:happens_at ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml_common:has_interval ], [ a owl:Restriction ; - owl:allValuesFrom linkml_common:TimePoint ; + owl:minCardinality 0 ; 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 ], + owl:onProperty linkml_common:starts_at ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:TimePoint ; owl:onProperty linkml_common:starts_at ], @@ -1679,103 +2395,91 @@ linkml_common:HealthcareEncounterClassification a owl:Class ; , . +linkml_common:classification a owl:ObjectProperty ; + rdfs:label "classification" ; + rdfs:range linkml_common:Concept ; + skos:definition "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + skos:inScheme linkml_common:core . + 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:allValuesFrom linkml_common:Event ; owl:onProperty linkml_common:marker_event ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom xsd:dateTime ; + owl:onProperty linkml_common:datetime_value ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml_common:time_value ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:description ], + owl:onProperty linkml_common:date_value ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:time ; + owl:onProperty linkml_common:time_value ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:date_value ], [ a owl:Restriction ; owl:allValuesFrom xsd:string ; owl:onProperty linkml_common:description ], [ a owl:Restriction ; owl:minCardinality 0 ; + owl:onProperty linkml_common:description ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:date ; owl:onProperty linkml_common:date_value ], [ a owl:Restriction ; - owl:allValuesFrom xsd:dateTime ; - owl:onProperty linkml_common:datetime_value ], + owl:allValuesFrom xsd:integer ; + owl:onProperty linkml_common:year_value ], [ a owl:Restriction ; - owl:allValuesFrom xsd:time ; - owl:onProperty linkml_common:time_value ], + owl:maxCardinality 1 ; + owl:onProperty linkml_common:marker_event ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:description ], + owl:onProperty linkml_common:year_value ], [ 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:minCardinality 0 ; owl:onProperty linkml_common:marker_event ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:year_value ], + owl:onProperty linkml_common:time_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 ], + owl:onProperty linkml_common:description ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:year_value ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:time_value ], + owl:onProperty linkml_common:datetime_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 [ 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:Concept a owl:Class ; + rdfs:label "Concept" ; + rdfs:subClassOf linkml_common:NamedThing ; + skos:exactMatch , + biolink:OntologyClass ; + skos:inScheme linkml_common:core . linkml_common:NamedThing a owl:Class ; rdfs:label "NamedThing" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom xsd:anyURI ; - owl:onProperty linkml_common:id ], - [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml_common:subtype ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:type ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml_common:name ], - [ a owl:Restriction ; - owl:minCardinality 0 ; owl:onProperty linkml_common:name ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:description ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:classification ], [ a owl:Restriction ; owl:allValuesFrom xsd:string ; owl:onProperty linkml_common:type ], @@ -1783,45 +2487,190 @@ linkml_common:NamedThing a owl:Class ; owl:allValuesFrom xsd:string ; owl:onProperty linkml_common:name ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml_common:ontology_types ], - [ a owl:Restriction ; - owl:allValuesFrom xsd:string ; - owl:onProperty linkml_common:subtype ], + owl:minCardinality 1 ; + owl:onProperty linkml_common:id ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:id ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:subtype ], + owl:onProperty linkml_common:ontology_types ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:string ; + owl:onProperty linkml_common:description ], + [ a owl:Restriction ; + owl:allValuesFrom linkml_common:Concept ; + owl:onProperty linkml_common:ontology_types ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml_common:type ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml_common:description ], + owl:onProperty linkml_common:type ], + [ a owl:Restriction ; + owl:allValuesFrom xsd:anyURI ; + owl:onProperty linkml_common:id ], [ a owl:Restriction ; owl:allValuesFrom linkml_common:Concept ; - owl:onProperty linkml_common:ontology_types ], + owl:onProperty linkml_common:classification ], [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty linkml_common:id ], + owl:minCardinality 0 ; + owl:onProperty linkml_common:classification ], [ a owl:Restriction ; - owl:allValuesFrom xsd:string ; + owl:minCardinality 0 ; owl:onProperty linkml_common:description ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml_common:name ], linkml_common:Entity ; skos:inScheme linkml_common:core . +linkml_common:Quantity a owl:Class ; + rdfs:label "Quantity" ; + rdfs:subClassOf [ 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 ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml_common:has_quantity_kind ], + linkml_common:Intangible ; + skos:exactMatch , + schema1:Quantity ; + skos:inScheme linkml_common:quantities . + linkml_common:type a owl:DatatypeProperty ; rdfs:label "type" ; rdfs:range xsd:string ; - skos:definition "A type for a thing" ; + skos:definition "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; skos:inScheme linkml_common:core . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Measurement ; + rdfs:subClassOf linkml_common:Specification ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:Specification . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:UnitConcept ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:UnitConcept . + +[] 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:Investigation ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:Investigation . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:DataGenerationFromSample ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:DataGenerationFromSample . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:Landform ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:Landform . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:Publication ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:Publication . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:BuiltEnvironmentFeature ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:BuiltEnvironmentFeature . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:MaterialCollection ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:MaterialCollection . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:HealthcareRole ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:HealthcareRole . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:ExtractiveIndustryWaste ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:ExtractiveIndustryWaste . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:Place ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:Place . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:QuantityKind ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:QuantityKind . + +[] 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:Procedure ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:Procedure . + +[] 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:Patient ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:Patient . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:HydroelectricPlant ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:HydroelectricPlant . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:Role ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:Role . + +[] 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:CurrencyConcept ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:CurrencyConcept . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:PostalAddress ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:PostalAddress . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:CompositeFoodType ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:CompositeFoodType . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:EngineeringMaterialProcessing ; + owl:onProperty linkml_common:type ; + owl:someValuesFrom linkml_common:EngineeringMaterialProcessing . + +[] a owl:Restriction ; + rdfs:subClassOf linkml_common:ExtractiveIndustryFacility ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Measurement . + owl:someValuesFrom linkml_common:ExtractiveIndustryFacility . [] a owl:Restriction ; rdfs:subClassOf linkml_common:MaterialProcessing ; @@ -1829,49 +2678,44 @@ linkml_common:type a owl:DatatypeProperty ; owl:someValuesFrom linkml_common:MaterialProcessing . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Specification ; - owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Specification . - -[] a owl:Restriction ; - rdfs:subClassOf linkml_common:Publication ; + rdfs:subClassOf linkml_common:Agent ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Publication . + owl:someValuesFrom linkml_common:Agent . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:InvestigativeProcess ; + rdfs:subClassOf linkml_common:HealthcareEncounter ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:InvestigativeProcess . + owl:someValuesFrom linkml_common:HealthcareEncounter . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:UnitConcept ; + rdfs:subClassOf linkml_common:BuiltSystem ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:UnitConcept . + owl:someValuesFrom linkml_common:BuiltSystem . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Relationship ; + rdfs:subClassOf linkml_common:BasicFoodType ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Relationship . + owl:someValuesFrom linkml_common:BasicFoodType . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Collection ; + rdfs:subClassOf linkml_common:TimePoint ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Collection . + owl:someValuesFrom linkml_common:TimePoint . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:HealthcareSite ; + rdfs:subClassOf linkml_common:Organization ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:HealthcareSite . + owl:someValuesFrom linkml_common:Organization . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:FoodTypeConcept ; + rdfs:subClassOf linkml_common:QuarryFacility ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:FoodTypeConcept . + owl:someValuesFrom linkml_common:QuarryFacility . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:SampleCollectionProcess ; + rdfs:subClassOf linkml_common:Relationship ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:SampleCollectionProcess . + owl:someValuesFrom linkml_common:Relationship . [] a owl:Restriction ; rdfs:subClassOf linkml_common:CreativeWork ; @@ -1879,317 +2723,312 @@ linkml_common:type a owl:DatatypeProperty ; 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 ; + rdfs:subClassOf linkml_common:Building ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:MaterialCollection . + owl:someValuesFrom linkml_common:Building . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:EngineeringMaterialProcessing ; + rdfs:subClassOf linkml_common:PhysicalDevice ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:EngineeringMaterialProcessing . + owl:someValuesFrom linkml_common:PhysicalDevice . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:EngineeringSpecification ; + rdfs:subClassOf linkml_common:PowerPlant ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:EngineeringSpecification . + owl:someValuesFrom linkml_common:PowerPlant . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Patient ; + rdfs:subClassOf linkml_common:SolarPlant ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Patient . + owl:someValuesFrom linkml_common:SolarPlant . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:FinancialProduct ; + rdfs:subClassOf linkml_common:ExtractiveIndustryEquipment ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:FinancialProduct . + owl:someValuesFrom linkml_common:ExtractiveIndustryEquipment . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:HealthcareRole ; + rdfs:subClassOf linkml_common:RenewablePlant ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:HealthcareRole . + owl:someValuesFrom linkml_common:RenewablePlant . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:BasicFoodType ; + rdfs:subClassOf linkml_common:FossilFuelPlant ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:BasicFoodType . + owl:someValuesFrom linkml_common:FossilFuelPlant . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:ClinicalCohortEnrollment ; + rdfs:subClassOf linkml_common:StudyDesign ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:ClinicalCohortEnrollment . + owl:someValuesFrom linkml_common:StudyDesign . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Landform ; + rdfs:subClassOf linkml_common:HealthcareOrganization ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Landform . + owl:someValuesFrom linkml_common:HealthcareOrganization . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:TimePoint ; + rdfs:subClassOf linkml_common:Quantity ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:TimePoint . + owl:someValuesFrom linkml_common:Quantity . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:SimpleQuantity ; + rdfs:subClassOf linkml_common:FoodRecipe ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:SimpleQuantity . + owl:someValuesFrom linkml_common:FoodRecipe . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:FinancialAccount ; + rdfs:subClassOf linkml_common:Event ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:FinancialAccount . + owl:someValuesFrom linkml_common:Event . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Observation ; + rdfs:subClassOf linkml_common:FoodProcessing ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Observation . + owl:someValuesFrom linkml_common:FoodProcessing . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:SampleProcessing ; + rdfs:subClassOf linkml_common:ClinicalCohortDefinition ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:SampleProcessing . + owl:someValuesFrom linkml_common:ClinicalCohortDefinition . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:ClinicalCohort ; + rdfs:subClassOf linkml_common:HealthcareConditionOccurrence ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:ClinicalCohort . + owl:someValuesFrom linkml_common:HealthcareConditionOccurrence . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:SampleMaterial ; + rdfs:subClassOf linkml_common:RawMaterial ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:SampleMaterial . + owl:someValuesFrom linkml_common:RawMaterial . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Quantity ; + rdfs:subClassOf linkml_common:Dataset ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Quantity . + owl:someValuesFrom linkml_common:Dataset . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:PostalAddress ; + rdfs:subClassOf linkml_common:MoneyQuantity ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:PostalAddress . + owl:someValuesFrom linkml_common:MoneyQuantity . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:FoodIngredient ; + rdfs:subClassOf linkml_common:HealthcareProvider ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:FoodIngredient . + owl:someValuesFrom linkml_common:HealthcareProvider . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:HealthcareOrganization ; + rdfs:subClassOf linkml_common:Service ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:HealthcareOrganization . + owl:someValuesFrom linkml_common:Service . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:HealthcareEncounter ; + rdfs:subClassOf linkml_common:NuclearPlant ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:HealthcareEncounter . + owl:someValuesFrom linkml_common:NuclearPlant . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:PhysicalDevice ; + rdfs:subClassOf linkml_common:Variable ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:PhysicalDevice . + owl:someValuesFrom linkml_common:Variable . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:QuantityRange ; + rdfs:subClassOf linkml_common:NamedThing ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:QuantityRange . + owl:someValuesFrom linkml_common:NamedThing . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:TemporalRelationship ; + rdfs:subClassOf linkml_common:ExtractiveIndustryProduct ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:TemporalRelationship . + owl:someValuesFrom linkml_common:ExtractiveIndustryProduct . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Organization ; + rdfs:subClassOf linkml_common:Ratio ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Organization . + owl:someValuesFrom linkml_common:Ratio . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:FoodRecipe ; + rdfs:subClassOf linkml_common:InvestigativeProcess ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:FoodRecipe . + owl:someValuesFrom linkml_common:InvestigativeProcess . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:AutomatedAgent ; + rdfs:subClassOf linkml_common:SimpleQuantity ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:AutomatedAgent . + owl:someValuesFrom linkml_common:SimpleQuantity . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Place ; + rdfs:subClassOf linkml_common:ElectricalGrid ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Place . + owl:someValuesFrom linkml_common:ElectricalGrid . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:TemporalInterval ; + rdfs:subClassOf linkml_common:PowerPlantType ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:TemporalInterval . + owl:someValuesFrom linkml_common:PowerPlantType . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Intangible ; + rdfs:subClassOf linkml_common:FinancialAccount ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Intangible . + owl:someValuesFrom linkml_common:FinancialAccount . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:MoneyQuantity ; + rdfs:subClassOf linkml_common:EnvironmentalSite ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:MoneyQuantity . + owl:someValuesFrom linkml_common:EnvironmentalSite . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Event ; + rdfs:subClassOf linkml_common:HealthcareSite ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Event . + owl:someValuesFrom linkml_common:HealthcareSite . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Variable ; + rdfs:subClassOf linkml_common:Measurement ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Variable . + owl:someValuesFrom linkml_common:Measurement . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Concept ; + rdfs:subClassOf linkml_common:FossilFuel ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Concept . + owl:someValuesFrom linkml_common:FossilFuel . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Dataset ; + rdfs:subClassOf linkml_common:Person ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Dataset . + owl:someValuesFrom linkml_common:Person . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:ClinicalCohortDefinition ; + rdfs:subClassOf linkml_common:SampleCollectionProcess ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:ClinicalCohortDefinition . + owl:someValuesFrom linkml_common:SampleCollectionProcess . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Entity ; + rdfs:subClassOf linkml_common:ClinicalCohort ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Entity . + owl:someValuesFrom linkml_common:ClinicalCohort . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:StudyDesign ; + rdfs:subClassOf linkml_common:Duration ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:StudyDesign . + owl:someValuesFrom linkml_common:Duration . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:DataStructure ; + rdfs:subClassOf linkml_common:EngineeringSpecification ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:DataStructure . + owl:someValuesFrom linkml_common:EngineeringSpecification . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Duration ; + rdfs:subClassOf linkml_common:MiningFacility ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Duration . + owl:someValuesFrom linkml_common:MiningFacility . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Ratio ; + rdfs:subClassOf linkml_common:FoodIngredient ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Ratio . + owl:someValuesFrom linkml_common:FoodIngredient . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:CompositeFoodType ; + rdfs:subClassOf linkml_common:DataStructure ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:CompositeFoodType . + owl:someValuesFrom linkml_common:DataStructure . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Role ; + rdfs:subClassOf linkml_common:Facility ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Role . + owl:someValuesFrom linkml_common:Facility . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:HealthcareConditionOccurrence ; + rdfs:subClassOf linkml_common:Collection ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:HealthcareConditionOccurrence . + owl:someValuesFrom linkml_common:Collection . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:TimePointOrTemporalInterval ; + rdfs:subClassOf linkml_common:WellFacility ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:TimePointOrTemporalInterval . + owl:someValuesFrom linkml_common:WellFacility . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:EngineeringProcess ; + rdfs:subClassOf linkml_common:Entity ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:EngineeringProcess . + owl:someValuesFrom linkml_common:Entity . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:InvestigativeProtocol ; + rdfs:subClassOf linkml_common:FoodTypeConcept ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:InvestigativeProtocol . + owl:someValuesFrom linkml_common:FoodTypeConcept . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:DataGenerationFromSample ; + rdfs:subClassOf linkml_common:SampleMaterial ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:DataGenerationFromSample . + owl:someValuesFrom linkml_common:SampleMaterial . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:QuantityKind ; + rdfs:subClassOf linkml_common:TemporalRelationship ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:QuantityKind . + owl:someValuesFrom linkml_common:TemporalRelationship . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:HealthcareProvider ; + rdfs:subClassOf linkml_common:InformationEntity ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:HealthcareProvider . + owl:someValuesFrom linkml_common:InformationEntity . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:NamedThing ; + rdfs:subClassOf linkml_common:ClinicalCohortEnrollment ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:NamedThing . + owl:someValuesFrom linkml_common:ClinicalCohortEnrollment . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:EnvironmentalSite ; + rdfs:subClassOf linkml_common:AutomatedAgent ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:EnvironmentalSite . + owl:someValuesFrom linkml_common:AutomatedAgent . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:PlannedProcess ; + rdfs:subClassOf linkml_common:WindFarm ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:PlannedProcess . + owl:someValuesFrom linkml_common:WindFarm . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Person ; + rdfs:subClassOf linkml_common:TemporalInterval ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Person . + owl:someValuesFrom linkml_common:TemporalInterval . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:RawMaterial ; + rdfs:subClassOf linkml_common:InvestigativeProtocol ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:RawMaterial . + owl:someValuesFrom linkml_common:InvestigativeProtocol . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:CurrencyConcept ; + rdfs:subClassOf linkml_common:QuantityRange ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:CurrencyConcept . + owl:someValuesFrom linkml_common:QuantityRange . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Procedure ; + rdfs:subClassOf linkml_common:EngineeringProcess ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Procedure . + owl:someValuesFrom linkml_common:EngineeringProcess . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:FoodProcessing ; + rdfs:subClassOf linkml_common:TimePointOrTemporalInterval ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:FoodProcessing . + owl:someValuesFrom linkml_common:TimePointOrTemporalInterval . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:InformationEntity ; + rdfs:subClassOf linkml_common:PlannedProcess ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:InformationEntity . + owl:someValuesFrom linkml_common:PlannedProcess . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:LifeEvent ; + rdfs:subClassOf linkml_common:FinancialProduct ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:LifeEvent . + owl:someValuesFrom linkml_common:FinancialProduct . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Agent ; + rdfs:subClassOf linkml_common:Equipment ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Agent . + owl:someValuesFrom linkml_common:Equipment . [] a owl:Restriction ; - rdfs:subClassOf linkml_common:Investigation ; + rdfs:subClassOf linkml_common:Concept ; owl:onProperty linkml_common:type ; - owl:someValuesFrom linkml_common:Investigation . + owl:someValuesFrom linkml_common:Concept . diff --git a/project/prefixmap/linkml_common.yaml b/project/prefixmap/linkml_common.yaml index 7fb68e5..8dacea7 100644 --- a/project/prefixmap/linkml_common.yaml +++ b/project/prefixmap/linkml_common.yaml @@ -10,7 +10,7 @@ "dcterms": "http://purl.org/dc/terms/", "example": "https://example.org/", "fhir": "http://hl7.org/fhir/", - "fibo": "http://example.org/UNKNOWN/fibo/", + "fibo": "https://spec.edmcouncil.org/fibo/ontology/FBC", "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/", @@ -32,6 +32,9 @@ "Intangible": { "@id": "schema:Intangible" }, + "MoneyQuantity": { + "@id": "fhir:MoneyQuantity" + }, "Place": { "@id": "schema:Place" }, diff --git a/project/protobuf/linkml_common.proto b/project/protobuf/linkml_common.proto index 1914513..710e62a 100644 --- a/project/protobuf/linkml_common.proto +++ b/project/protobuf/linkml_common.proto @@ -4,7 +4,7 @@ message Agent uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 } @@ -14,7 +14,7 @@ message AutomatedAgent uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 } @@ -23,7 +23,35 @@ message BasicFoodType uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + } +message Building + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + place locatedAtPlace = 0 + } +message BuiltEnvironmentFeature + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + } +message BuiltSystem + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 } @@ -33,7 +61,7 @@ message ClinicalCohort uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 clinicalCohortDefinition definition = 0 @@ -44,7 +72,7 @@ message ClinicalCohortDefinition uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 } @@ -54,7 +82,7 @@ message ClinicalCohortEnrollment uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 timePoint startsAt = 0 @@ -76,7 +104,7 @@ message CompositeFoodType uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 } @@ -85,7 +113,7 @@ message Concept uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 } @@ -95,7 +123,7 @@ message CreativeWork uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 string title = 0 @@ -106,12 +134,22 @@ message CreativeWork repeated agent contacts = 0 repeated string keywords = 0 } +// A currency +message CurrencyConcept + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + } message DataGenerationFromSample { uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 timePoint startsAt = 0 @@ -128,7 +166,7 @@ message Dataset uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 string title = 0 @@ -150,12 +188,23 @@ message Duration string type = 0 quantityKind hasQuantityKind = 0 } +// A network of electrical transmission lines +message ElectricalGrid + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + repeated powerPlant plants = 0 + } message EngineeringMaterialProcessing { uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 timePoint startsAt = 0 @@ -171,7 +220,7 @@ message EngineeringProcess uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 timePoint startsAt = 0 @@ -187,7 +236,7 @@ message EngineeringSpecification uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 } @@ -197,11 +246,21 @@ message EnvironmentalSite uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 postalAddress address = 0 geoPointLocation geolocation = 0 + geoBoxLocation boundingCoordinates = 0 + } +message Equipment + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 } // A thing that happens message Event @@ -209,7 +268,7 @@ message Event uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 timePoint startsAt = 0 @@ -218,6 +277,79 @@ message Event temporalInterval hasInterval = 0 duration hasDuration = 0 } +// The equipment used in extractive industry operations +message ExtractiveIndustryEquipment + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + } +// A facility where natural resources are extracted from the earth +message ExtractiveIndustryFacility + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + place locatedAtPlace = 0 + extractiveIndustryFacilityType facilityType = 0 + organization operator = 0 + repeated extractiveIndustryProduct products = 0 + quantity productionCapacity = 0 + quantity annualProduction = 0 + quantity reserves = 0 + } +// A product extracted from an extractive industry facility +message ExtractiveIndustryProduct + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + extractiveIndustryProductType productType = 0 + simpleQuantity grade = 0 + engineeringSpecification processingMethod = 0 + } +// Waste material generated from extractive industry operations +message ExtractiveIndustryWaste + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + } +message Facility + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + place locatedAtPlace = 0 + } +// A bank account +message FinancialAccount + { + string type = 0 + string accountNumber = 0 + organization bank = 0 + person accountHolder = 0 + } +// A product or service offered by a bank whereby one may deposit, withdraw or transfer money and in some cases be paid interest. +message FinancialProduct + { + string type = 0 + } message FoodIngredient { string type = 0 @@ -228,7 +360,7 @@ message FoodProcessing uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 timePoint startsAt = 0 @@ -244,7 +376,7 @@ message FoodRecipe uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 repeated foodIngredient ingredients = 0 @@ -255,9 +387,46 @@ message FoodTypeConcept uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + } +// A type of fossil fuel +message FossilFuel + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + } +// A power plant that uses fossil fuels +message FossilFuelPlant + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 + place locatedAtPlace = 0 + powerPlantType plantType = 0 + place location = 0 + organization operator = 0 + simpleQuantity capacity = 0 + date commissioningDate = 0 + date decommissioningDate = 0 + moneyQuantity capex = 0 + moneyQuantity opex = 0 + fossilFuel fuel = 0 + } +message GeoBoxLocation + { + decimal westBoundingCoordinate = 0 + decimal eastBoundingCoordinate = 0 + decimal northBoundingCoordinate = 0 + decimal southBoundingCoordinate = 0 } message GeoPointLocation { @@ -270,7 +439,7 @@ message HealthcareConditionOccurrence uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 timePoint startsAt = 0 @@ -281,6 +450,7 @@ message HealthcareConditionOccurrence patient patient = 0 healthcareEncounter observedDuring = 0 } +// An interaction between a patient and one or more healthcare providers message HealthcareEncounter { uriorcurie id = 0 @@ -295,14 +465,15 @@ message HealthcareEncounter duration hasDuration = 0 patient patient = 0 healthcareProvider provider = 0 - healthcareEncounterClassification subtype = 0 + healthcareEncounterClassification classification = 0 } +// An organization that provides healthcare services message HealthcareOrganization { uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 } @@ -323,11 +494,32 @@ message HealthcareSite uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 postalAddress address = 0 geoPointLocation geolocation = 0 + geoBoxLocation boundingCoordinates = 0 + } +// A hydroelectric power plant +message HydroelectricPlant + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + place locatedAtPlace = 0 + powerPlantType plantType = 0 + place location = 0 + organization operator = 0 + simpleQuantity capacity = 0 + date commissioningDate = 0 + date decommissioningDate = 0 + moneyQuantity capex = 0 + moneyQuantity opex = 0 + landform dam = 0 } // An entity that describes some information message InformationEntity @@ -335,7 +527,7 @@ message InformationEntity uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 any describes = 0 @@ -350,7 +542,7 @@ message Investigation uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 string objectives = 0 @@ -361,7 +553,7 @@ message InvestigativeProcess uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 timePoint startsAt = 0 @@ -378,9 +570,10 @@ message InvestigativeProtocol uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 repeated concept ontologyTypes = 0 string description = 0 + uri protocolsIoUrl = 0 + concept classification = 0 } // A natural feature of the solid surface of the Earth or other planetary body message Landform @@ -388,10 +581,11 @@ message Landform uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 postalAddress address = 0 + geoBoxLocation boundingCoordinates = 0 geoPointLocation geolocation = 0 } message LifeEvent @@ -399,7 +593,7 @@ message LifeEvent uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 timePoint startsAt = 0 @@ -413,7 +607,7 @@ message MaterialCollection uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 timePoint startsAt = 0 @@ -429,7 +623,7 @@ message MaterialProcessing uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 timePoint startsAt = 0 @@ -454,15 +648,62 @@ message Measurement quantity quantityMeasured = 0 variable variableMeasured = 0 } +// A facility where mineral resources are extracted from the earth +message MiningFacility + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + place locatedAtPlace = 0 + extractiveIndustryFacilityType facilityType = 0 + organization operator = 0 + repeated extractiveIndustryProduct products = 0 + quantity productionCapacity = 0 + quantity annualProduction = 0 + quantity reserves = 0 + miningMethod miningMethod = 0 + quantity depth = 0 + quantity area = 0 + } +// A quantity of money +message MoneyQuantity + { + string type = 0 + quantityKind hasQuantityKind = 0 + float value = 0 + currencyConcept unit = 0 + } message NamedThing { uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 } +// A nuclear power plant +message NuclearPlant + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + place locatedAtPlace = 0 + powerPlantType plantType = 0 + place location = 0 + organization operator = 0 + simpleQuantity capacity = 0 + date commissioningDate = 0 + date decommissioningDate = 0 + moneyQuantity capex = 0 + moneyQuantity opex = 0 + } // A statement about the state of something message Observation { @@ -474,7 +715,7 @@ message Organization uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 } @@ -489,7 +730,7 @@ message Person uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 string primaryEmail = 0 @@ -502,7 +743,7 @@ message PhysicalDevice uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 } @@ -512,11 +753,12 @@ message Place uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 postalAddress address = 0 geoPointLocation geolocation = 0 + geoBoxLocation boundingCoordinates = 0 } // A process that follows a defined procedure or plan message PlannedProcess @@ -524,7 +766,7 @@ message PlannedProcess uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 timePoint startsAt = 0 @@ -546,13 +788,42 @@ message PostalAddress string postalCode = 0 string country = 0 } +// A facility for generating electrical power +message PowerPlant + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + place locatedAtPlace = 0 + powerPlantType plantType = 0 + place location = 0 + organization operator = 0 + simpleQuantity capacity = 0 + date commissioningDate = 0 + date decommissioningDate = 0 + moneyQuantity capex = 0 + moneyQuantity opex = 0 + } +// The type of power plant +message PowerPlantType + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + } // A canonical series of actions conducted in a certain order or manner message Procedure { uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 } @@ -561,7 +832,7 @@ message Publication uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 string title = 0 @@ -582,7 +853,7 @@ message QuantityKind uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 } @@ -593,6 +864,23 @@ message QuantityRange quantity lowerBound = 0 quantity upperBound = 0 } +// A facility where stone, sand, or gravel are extracted from the earth +message QuarryFacility + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + place locatedAtPlace = 0 + extractiveIndustryFacilityType facilityType = 0 + organization operator = 0 + repeated extractiveIndustryProduct products = 0 + quantity productionCapacity = 0 + quantity annualProduction = 0 + quantity reserves = 0 + } // A tuple of two quantities message Ratio { @@ -606,16 +894,35 @@ message RawMaterial uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + } +// A power plant that uses renewable energy sources +message RenewablePlant + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 + place locatedAtPlace = 0 + powerPlantType plantType = 0 + place location = 0 + organization operator = 0 + simpleQuantity capacity = 0 + date commissioningDate = 0 + date decommissioningDate = 0 + moneyQuantity capex = 0 + moneyQuantity opex = 0 } message SampleCollectionProcess { uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 timePoint startsAt = 0 @@ -634,7 +941,7 @@ message SampleMaterial uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 } @@ -643,7 +950,7 @@ message SampleProcessing uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 timePoint startsAt = 0 @@ -667,13 +974,32 @@ message SimpleQuantity float value = 0 unitConcept unit = 0 } +// A solar power plant +message SolarPlant + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + place locatedAtPlace = 0 + powerPlantType plantType = 0 + place location = 0 + organization operator = 0 + simpleQuantity capacity = 0 + date commissioningDate = 0 + date decommissioningDate = 0 + moneyQuantity capex = 0 + moneyQuantity opex = 0 + } // A specification of a thing message Specification { uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 } @@ -682,9 +1008,9 @@ message StudyDesign uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 repeated concept ontologyTypes = 0 string description = 0 + concept classification = 0 } // A period of time message TemporalInterval @@ -724,7 +1050,7 @@ message UnitConcept uriorcurie id = 0 string name = 0 string type = 0 - string subtype = 0 + concept classification = 0 repeated concept ontologyTypes = 0 string description = 0 } @@ -741,3 +1067,41 @@ message Variable string type = 0 repeated unitConcept allowedUnits = 0 } +// A facility where fluid resources (e.g., oil, gas, water) are extracted from the earth +message WellFacility + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + place locatedAtPlace = 0 + extractiveIndustryFacilityType facilityType = 0 + organization operator = 0 + repeated extractiveIndustryProduct products = 0 + quantity productionCapacity = 0 + quantity annualProduction = 0 + quantity reserves = 0 + wellType wellType = 0 + quantity depth = 0 + } +// A wind farm +message WindFarm + { + uriorcurie id = 0 + string name = 0 + string type = 0 + concept classification = 0 + repeated concept ontologyTypes = 0 + string description = 0 + place locatedAtPlace = 0 + powerPlantType plantType = 0 + place location = 0 + organization operator = 0 + simpleQuantity capacity = 0 + date commissioningDate = 0 + date decommissioningDate = 0 + moneyQuantity capex = 0 + moneyQuantity opex = 0 + } diff --git a/project/shacl/linkml_common.shacl.ttl b/project/shacl/linkml_common.shacl.ttl index 9cbc671..da719cf 100644 --- a/project/shacl/linkml_common.shacl.ttl +++ b/project/shacl/linkml_common.shacl.ttl @@ -1,39 +1,12 @@ @prefix PATO: . +@prefix dcterms: . @prefix linkml: . @prefix linkml_common: . @prefix rdf: . -@prefix schema: . +@prefix schema1: . @prefix sh: . @prefix xsd: . - a sh:NodeShape ; - sh:closed true ; - sh:description "A quantity of money" ; - sh:ignoredProperties ( rdf:type ) ; - 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:targetClass . - a sh:NodeShape ; sh:closed true ; sh:description "A quantity range is a property that can be measured or counted" ; @@ -41,18 +14,18 @@ sh:property [ sh:class ; sh:description "The lower bound of the range" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 0 ; sh:path linkml_common:lower_bound ], [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 2 ; sh:path linkml_common:type ], [ sh:class ; sh:description "The upper bound of the range" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 1 ; sh:path linkml_common:upper_bound ] ; sh:targetClass . @@ -61,275 +34,316 @@ sh:closed true ; sh:description "A tuple of two quantities" ; sh:ignoredProperties ( rdf:type ) ; - 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:string ; - sh:description "A type for a thing" ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml_common:type ], - [ sh:class ; + sh:property [ sh:class ; sh:description "The denominator of the ratio" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 1 ; sh:path linkml_common:denominator ], - [ sh:class ; - sh:description "The numerator of the ratio" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 0 ; - sh:path linkml_common:numerator ] ; - sh:targetClass . - - a sh:NodeShape ; - sh:closed true ; - sh:description "A quantity is a property that can be measured or counted" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ 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:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 3 ; sh:path linkml_common:type ], - [ sh:class linkml_common:UnitConcept ; + [ sh:class ; + sh:description "The numerator of the ratio" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml_common:unit ], + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 0 ; + sh:path linkml_common:numerator ], [ 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:targetClass . + sh:targetClass . -schema:Intangible a sh:NodeShape ; +schema1:Intangible a sh:NodeShape ; sh:closed true ; sh:description "An entity that is not a physical object, process, or information" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 0 ; + sh:path linkml_common:type ] ; + sh:targetClass schema1:Intangible . + +schema1:Role a sh:NodeShape ; + sh:closed false ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 0 ; sh:path linkml_common:type ] ; - sh:targetClass schema:Intangible . + sh:targetClass schema1:Role . -schema:Place a sh:NodeShape ; +linkml_common:AutomatedAgent a sh:NodeShape ; sh:closed true ; - sh:description "Entities that have a somewhat fixed, physical extension." ; + sh:description "Represents an Automated Agent" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 4 ; + sh:order 2 ; sh:path linkml_common:type ], [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 6 ; + sh:order 3 ; + sh:path linkml_common:classification ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 4 ; 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: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:class linkml_common:GeoPointLocation ; - sh:description "The geolocation of the place" ; + 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 schema1: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:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; - sh:maxCount 1 ; - sh:order 3 ; - 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: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 linkml_common:type ] ; - sh:targetClass schema:Role . + sh:path schema1:identifier ] ; + sh:targetClass linkml_common:AutomatedAgent . -linkml_common:AutomatedAgent a sh:NodeShape ; +linkml_common:BasicFoodType 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 description for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 5 ; - sh:path schema:description ], - [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:order 2 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; + sh:nodeKind sh:IRI ; sh:order 3 ; - sh:path linkml_common:subtype ], + sh:path linkml_common:classification ], + [ 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 schema:name ], + sh:path schema1:name ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 0 ; - sh:path schema:identifier ], + sh:path schema1:identifier ], [ 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 5 ; + sh:path schema1:description ] ; + sh:targetClass linkml_common:BasicFoodType . + +linkml_common:Building 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 2 ; - sh:path linkml_common:type ], + sh:path schema1:name ], + [ sh:class schema1:Place ; + sh:description "The place where the entity is located" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml_common:located_at_place ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 6 ; + sh:path schema1:description ], + [ 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:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 4 ; - sh:path linkml_common:ontology_types ] ; - sh:targetClass linkml_common:AutomatedAgent . + sh:path linkml_common:classification ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml_common:type ] ; + sh:targetClass linkml_common:Building . -linkml_common:BasicFoodType a sh:NodeShape ; +linkml_common:BuiltEnvironmentFeature 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:property [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; - sh:order 5 ; - sh:path schema:description ], + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml_common:classification ], + [ 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. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + 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 schema:name ], + 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:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path schema1:description ] ; + sh:targetClass linkml_common:BuiltEnvironmentFeature . + +linkml_common:BuiltSystem a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; 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:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; + sh:nodeKind sh:IRI ; sh:order 3 ; - sh:path linkml_common:subtype ], + sh:path linkml_common:classification ], [ 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:BasicFoodType . + 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: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 schema1:description ] ; + sh:targetClass linkml_common:BuiltSystem . 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:property [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 0 ; - sh:path linkml_common:patient ], + sh:minCount 1 ; + sh:order 7 ; + sh:path schema1:identifier ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; 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:class linkml_common:ClinicalCohort ; sh:maxCount 1 ; - sh:order 12 ; - sh:path schema:description ], + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:cohort ], [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 11 ; - sh:path linkml_common:ontology_types ], + sh:order 10 ; + sh:path linkml_common:classification ], + [ sh:class linkml_common:TemporalInterval ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 5 ; + sh:path linkml_common:has_interval ], + [ sh:class linkml_common:Patient ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 0 ; + sh:path linkml_common:patient ], [ sh:class linkml_common:Duration ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 6 ; sh:path linkml_common:has_duration ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path linkml_common:happens_at ], [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 10 ; - sh:path linkml_common:subtype ], + sh:order 9 ; + sh:path linkml_common:type ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; 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:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 5 ; - sh:path linkml_common:has_interval ], + sh:order 12 ; + sh:path schema1:description ], [ 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:ClinicalCohort ; - sh:maxCount 1 ; + sh:path schema1:name ], + [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml_common:cohort ] ; + sh:order 11 ; + sh:path linkml_common:ontology_types ] ; 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:class schema:Thing ; + sh:property [ sh:class schema1:Thing ; sh:description "The members of the collection" ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 0 ; sh:path linkml_common:members ], [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 1 ; sh:path linkml_common:type ] ; @@ -338,185 +352,188 @@ linkml_common:Collection a sh:NodeShape ; linkml_common:CompositeFoodType 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: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:property [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path schema:identifier ], + 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 schema:description ], + 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 schema:name ], - [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:path schema1:name ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml_common:type ] ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml_common:classification ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 0 ; + sh:path schema1:identifier ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 4 ; + sh:path linkml_common:ontology_types ] ; sh:targetClass linkml_common:CompositeFoodType . 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: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:property [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 7 ; - sh:path schema:identifier ], + sh:order 12 ; + sh:path schema1:description ], [ sh:class linkml_common:Agent ; - sh:description "A person or organization that contributed to the creation of the work" ; + sh:description "A contact point for a person or organization" ; sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path ], + sh:order 5 ; + sh:path schema1:contactPoint ], [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 8 ; - sh:path schema:name ], + sh:order 9 ; + sh:path linkml_common:type ], + [ 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 "Keywords or tags used to describe this item" ; + sh:order 6 ; + sh:path schema1:keywords ], [ sh:datatype xsd:string ; sh:description "Information about rights held in and over the item" ; sh:maxCount 1 ; 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:path dcterms:creator ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 11 ; + sh:path linkml_common:ontology_types ], + [ 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 4 ; + sh:path dcterms:contributor ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 8 ; + sh:path schema1:name ], [ sh:datatype xsd:string ; 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 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:description "A unique identifier for a thing" ; 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:minCount 1 ; + sh:order 7 ; + sh:path schema1:identifier ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; 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:order 10 ; + sh:path linkml_common:classification ] ; 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:property [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:order 11 ; - sh:path linkml_common:subtype ], + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path linkml_common:starts_at ], [ 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:path schema1:name ], [ 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 10 ; - sh:path linkml_common:type ], + sh:order 13 ; + sh:path schema1:description ], + [ 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:maxCount 1 ; sh:minCount 1 ; sh:order 8 ; - sh:path schema:identifier ], - [ sh:class linkml_common:PhysicalDevice ; + sh:path schema1:identifier ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 12 ; + sh:path linkml_common:ontology_types ], + [ sh:class linkml_common:Investigation ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 2 ; - sh:path linkml_common:uses_physical_device ], + sh:order 1 ; + sh:path linkml_common:part_of ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path linkml_common:ends_at ], [ sh:class linkml_common:TemporalInterval ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 6 ; sh:path linkml_common:has_interval ], + [ sh:class linkml_common:Duration ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path linkml_common:has_duration ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; 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:Investigation ; + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml_common:part_of ], + sh:order 10 ; + sh:path linkml_common:type ], [ sh:class linkml_common:InvestigativeProtocol ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; - sh:path linkml_common:follows_procedure ] ; + sh:path linkml_common:follows_procedure ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 11 ; + sh:path linkml_common:classification ] ; sh:targetClass linkml_common:DataGenerationFromSample . linkml_common:DataStructure 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 "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 0 ; sh:path linkml_common:type ] ; @@ -526,82 +543,134 @@ linkml_common:Dataset a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 12 ; - sh:path linkml_common:ontology_types ], + sh:order 11 ; + sh:path linkml_common:classification ], + [ 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 "A human-readable description for a thing" ; sh:maxCount 1 ; 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:order 3 ; - sh:path linkml_common:rights ], + sh:path schema1:description ], [ sh:class linkml_common:Agent ; - sh:description "The person or organization who created the work" ; + sh:description "A contact point for a person or organization" ; 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 11 ; - sh:path linkml_common:subtype ], + sh:order 6 ; + sh:path schema1:contactPoint ], [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 10 ; sh:path linkml_common:type ], [ sh:datatype xsd:string ; - sh:description "A summary of the item" ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml_common:abstract ], + sh:order 9 ; + sh:path schema1:name ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 8 ; + sh:path schema1:identifier ], [ sh:class linkml_common:Agent ; - sh:description "A contact point for a person or organization" ; + sh:description "The person or organization who created the work" ; sh:nodeKind sh:IRI ; - sh:order 6 ; - sh:path schema:contactPoint ], + sh:order 4 ; + sh:path dcterms:creator ], [ 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:datatype xsd:string ; + sh:description "Information about rights held in and over the item" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml_common:rights ], + [ 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:collected_as_part_of ], + sh:order 5 ; + sh:path dcterms:contributor ], + [ 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:Concept ; + sh:nodeKind sh:IRI ; + sh:order 12 ; + sh:path linkml_common:ontology_types ], [ sh:datatype xsd:string ; sh:description "Keywords or tags used to describe this item" ; sh:order 7 ; - sh:path schema:keywords ], + sh:path schema1:keywords ] ; + sh:targetClass linkml_common:Dataset . + +linkml_common:ElectricalGrid a sh:NodeShape ; + sh:closed true ; + sh:description "A network of electrical transmission lines" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + 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 "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:order 9 ; - sh:path schema:name ], + sh:order 6 ; + sh:path schema1:description ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 4 ; + sh:path linkml_common:classification ], [ 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:order 1 ; + sh:path schema1:identifier ], + [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; sh:order 5 ; - sh:path ] ; - sh:targetClass linkml_common:Dataset . + sh:path linkml_common:ontology_types ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path schema1:name ], + [ sh:class linkml_common:PowerPlant ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml_common:plants ] ; + sh:targetClass linkml_common:ElectricalGrid . 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:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 8 ; - sh:path schema:name ], + sh:order 9 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 10 ; + sh:path linkml_common:classification ], + [ sh:class linkml_common:TemporalInterval ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 5 ; + sh:path linkml_common:has_interval ], [ sh:class linkml_common:PhysicalDevice ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; @@ -611,21 +680,12 @@ linkml_common:EngineeringMaterialProcessing a sh:NodeShape ; 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:path schema1:description ], [ 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 9 ; - sh:path linkml_common:type ], + sh:order 8 ; + sh:path schema1:name ], [ sh:class linkml_common:Procedure ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; @@ -633,34 +693,33 @@ linkml_common:EngineeringMaterialProcessing a sh:NodeShape ; sh:path linkml_common:follows_procedure ], [ 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:class linkml_common:TimePoint ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; sh:path linkml_common:ends_at ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 11 ; + sh:path linkml_common:ontology_types ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 4 ; sh:path linkml_common:happens_at ], + [ sh:class linkml_common:Duration ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path linkml_common:has_duration ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + 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 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:path schema1:identifier ] ; sh:targetClass linkml_common:EngineeringMaterialProcessing . linkml_common:EnvironmentalMonitoring a sh:NodeShape ; @@ -677,133 +736,116 @@ 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 "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:property [ sh:class linkml_common:GeoPointLocation ; + sh:description "The geolocation of the place" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 2 ; - sh:path schema:identifier ], + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 1 ; + sh:path linkml_common:geolocation ], [ 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 4 ; + sh:path schema1:name ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 5 ; sh:path linkml_common:type ], - [ sh:class schema:PostalAddress ; + [ sh:class linkml_common:GeoBoxLocation ; + sh:description "The bounding coordinates of the place" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path linkml_common:bounding_coordinates ], + [ sh:class schema1:PostalAddress ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; 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 schema:description ], + sh:order 8 ; + sh:path schema1:description ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; - sh:order 6 ; + sh:order 7 ; sh:path linkml_common:ontology_types ], - [ sh:class linkml_common:GeoPointLocation ; - sh:description "The geolocation of the place" ; + [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml_common:geolocation ] ; + sh:minCount 1 ; + sh:order 3 ; + sh:path schema1:identifier ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 6 ; + sh:path linkml_common:classification ] ; sh:targetClass linkml_common:EnvironmentalSite . -linkml_common:FinancialAccount a sh:NodeShape ; +linkml_common:Equipment a sh:NodeShape ; sh:closed true ; - sh:description "A bank account" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "The account number" ; + 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 linkml_common:account_number ], - [ sh:class linkml_common:Person ; - sh:description "The person or organization that holds the account" ; + sh:path schema1: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:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 2 ; - sh:path linkml_common:account_holder ], + sh:order 3 ; + sh:path linkml_common:classification ], [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 3 ; + sh:order 2 ; sh:path linkml_common:type ], - [ sh:class linkml_common:Organization ; - sh:description "The bank that holds the account" ; - sh:maxCount 1 ; + [ sh:class linkml_common:Concept ; 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 . + sh:order 4 ; + sh:path linkml_common:ontology_types ] ; + sh:targetClass linkml_common:Equipment . -linkml_common:FoodRecipe a sh:NodeShape ; +linkml_common:ExtractiveIndustryEquipment a sh:NodeShape ; sh:closed true ; + sh:description "The equipment used in extractive industry operations" ; sh:ignoredProperties ( rdf:type ) ; 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:description "A unique identifier for a thing" ; + sh:order 5 ; + sh:path schema1:description ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:minCount 1 ; 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:path linkml_common:type ], [ 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:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; + sh:nodeKind sh:IRI ; 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:path linkml_common:classification ], [ 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: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:order 1 ; + sh:path schema1:name ], + [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; sh:order 4 ; sh:path linkml_common:ontology_types ], @@ -811,168 +853,146 @@ linkml_common:FoodTypeConcept a sh:NodeShape ; 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:path schema1:identifier ] ; + sh:targetClass linkml_common:ExtractiveIndustryEquipment . + +linkml_common:ExtractiveIndustryFacility a sh:NodeShape ; + sh:closed true ; + sh:description "A facility where natural resources are extracted from the earth" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml_common:type ], + sh:minCount 1 ; + sh:order 7 ; + sh:path schema1:identifier ], [ 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 schema:name ], - [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:order 12 ; + sh:path schema1:description ], + [ sh:class ; sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; - sh:path linkml_common:subtype ], - [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; + sh:path linkml_common:production_capacity ], + [ sh:class ; sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; 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:TemporalInterval ; + sh:path linkml_common:reserves ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 5 ; - sh:path linkml_common:has_interval ], - [ sh:class linkml_common:TimePoint ; + sh:order 9 ; + sh:path linkml_common:type ], + [ sh:class ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml_common:starts_at ], + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path linkml_common:annual_production ], [ 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:class linkml_common:ExtractiveIndustryProduct ; 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:order 2 ; + sh:path linkml_common:products ], + [ sh:in ( "MINING_FACILITY" "WELL_FACILITY" "QUARRY_FACILITY" ) ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; sh:order 0 ; - sh:path linkml_common:patient ], - [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:path linkml_common:facility_type ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; - sh:order 9 ; - sh:path linkml_common:type ], - [ sh:class linkml_common:TimePoint ; + sh:nodeKind sh:IRI ; + sh:order 10 ; + sh:path linkml_common:classification ], + [ sh:class schema1:Place ; + sh:description "The place where the entity is located" ; 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 description for a thing" ; + sh:nodeKind sh:IRI ; + sh:order 6 ; + sh:path linkml_common:located_at_place ], + [ sh:class linkml_common:Organization ; sh:maxCount 1 ; - sh:order 12 ; - sh:path schema:description ], + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:operator ], [ 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:Duration ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 6 ; - sh:path linkml_common:has_duration ] ; - sh:targetClass linkml_common:HealthcareConditionOccurrence . + sh:path schema1:name ] ; + sh:targetClass linkml_common:ExtractiveIndustryFacility . -linkml_common:HealthcareOrganization a sh:NodeShape ; +linkml_common:ExtractiveIndustryWaste a sh:NodeShape ; sh:closed true ; + sh:description "Waste material generated from extractive industry operations" ; 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 schema:name ], - [ sh:description "A unique identifier for a thing" ; + 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:path schema1:identifier ], + [ 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:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; 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 human-readable name for a thing" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path schema:description ], + sh:order 1 ; + sh:path schema1:name ], [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml_common:ontology_types ] ; - sh:targetClass linkml_common:HealthcareOrganization . + sh:order 3 ; + sh:path linkml_common:classification ], + [ 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:ExtractiveIndustryWaste . -linkml_common:HealthcareRole a sh:NodeShape ; +linkml_common:Facility a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:Person ; + sh:property [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 1 ; + sh:path schema1:identifier ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml_common:is_person ], + sh:order 4 ; + sh:path linkml_common:classification ], [ 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 1 ; - sh:path linkml_common:type ] ; - sh:targetClass linkml_common:HealthcareRole . - -linkml_common:InformationEntity a sh:NodeShape ; - sh:closed true ; - sh:description "An entity that describes some information" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:Any ; - sh:description "The thing that is being described" ; + sh:order 6 ; + sh:path schema1:description ], + [ sh:class schema1:Place ; + sh:description "The place where the entity is located" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:IRI ; sh:order 0 ; - sh:path schema:describes ], + sh:path linkml_common:located_at_place ], [ 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 schema:identifier ], [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 3 ; sh:path linkml_common:type ], @@ -980,340 +1000,742 @@ linkml_common:InformationEntity a sh:NodeShape ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; 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 description for a thing" ; - sh:maxCount 1 ; - sh:order 6 ; - sh:path schema:description ] ; - sh:targetClass linkml_common:InformationEntity . + sh:path schema1:name ] ; + sh:targetClass linkml_common:Facility . -linkml_common:InvestigativeProcess a sh:NodeShape ; +linkml_common:FinancialAccount a sh:NodeShape ; sh:closed true ; + sh:description "A bank account" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:InvestigativeProtocol ; + sh:property [ sh:datatype xsd:string ; + sh:description "The account number" ; 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:account_number ], + [ sh:class linkml_common:Organization ; + sh:description "The bank that holds the account" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 5 ; - sh:path linkml_common:happens_at ], - [ sh:class linkml_common:TimePoint ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:bank ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; sh:order 3 ; - sh:path linkml_common:starts_at ], - [ sh:class linkml_common:PhysicalDevice ; + sh:path linkml_common:type ], + [ 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:uses_physical_device ], + sh:path linkml_common:account_holder ] ; + 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. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + 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 name for a thing" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path schema1: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:TimePoint ; + sh:order 2 ; + sh:path schema1:identifier ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; 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:path linkml_common:type ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; sh:order 6 ; - sh:path linkml_common:has_interval ], - [ sh:class linkml_common:Investigation ; + sh:path linkml_common:ontology_types ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 5 ; + sh:path linkml_common:classification ], + [ sh:class linkml_common:FoodIngredient ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 0 ; + sh:path linkml_common:ingredients ], + [ 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:FoodProcessing ; sh:nodeKind sh:IRI ; sh:order 1 ; - sh:path linkml_common:part_of ], + sh:path linkml_common:steps ] ; + 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:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml_common:classification ], [ sh:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:order 9 ; - sh:path schema:name ], + sh:order 1 ; + sh:path schema1:name ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; - sh:order 12 ; + sh:order 4 ; sh:path linkml_common:ontology_types ], [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + 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:targetClass linkml_common:FoodTypeConcept . + +linkml_common:FossilFuelPlant a sh:NodeShape ; + sh:closed true ; + sh:description "A power plant that uses fossil fuels" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; sh:order 10 ; + sh:path schema1:identifier ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 14 ; + sh:path linkml_common:ontology_types ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path linkml_common:classification ], + [ sh:datatype xsd:date ; + sh:maxCount 1 ; + sh:order 6 ; + sh:path linkml_common:decommissioning_date ], + [ sh:class ; + sh:description "Operating expense for the plant" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 8 ; + sh:path linkml_common:opex ], + [ sh:class schema1:Place ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 2 ; + sh:path linkml_common:location ], + [ sh:class linkml_common:FossilFuel ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml_common:fuel ], + [ sh:datatype xsd:date ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path linkml_common:commissioning_date ], + [ sh:class schema1:Place ; + sh:description "The place where the entity is located" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 9 ; + sh:path linkml_common:located_at_place ], + [ sh:class linkml_common:Organization ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml_common:operator ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 11 ; + sh:path schema1:name ], + [ sh:class linkml_common:PowerPlantType ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:plant_type ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 12 ; sh:path linkml_common:type ], - [ sh:class linkml_common:Duration ; + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 15 ; + sh:path schema1:description ], + [ sh:class ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path linkml_common:capacity ], + [ sh:class ; + sh:description "Capital expenditure for the plant" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 7 ; + sh:path linkml_common:capex ] ; + sh:targetClass linkml_common:FossilFuelPlant . + +linkml_common:HealthcareConditionOccurrence a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 10 ; + sh:path linkml_common:classification ], + [ sh:class linkml_common:HealthcareEncounter ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:observed_during ], + [ sh:class linkml_common:Duration ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; sh:path linkml_common:has_duration ], - [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + [ sh:class linkml_common:Patient ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 0 ; + sh:path linkml_common:patient ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 7 ; + sh:path schema1:identifier ], + [ sh:class linkml_common:TemporalInterval ; sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 5 ; + sh:path linkml_common:has_interval ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + 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:subtype ], + sh:path linkml_common:ontology_types ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 9 ; + sh:path linkml_common:type ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 8 ; + sh:path schema1:name ], [ 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 . + sh:order 12 ; + sh:path schema1:description ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path linkml_common:ends_at ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path linkml_common:happens_at ] ; + sh:targetClass linkml_common:HealthcareConditionOccurrence . -linkml_common:Landform a sh:NodeShape ; +linkml_common:HealthcareOrganization a sh:NodeShape ; sh:closed true ; - sh:description "A natural feature of the solid surface of the Earth or other planetary body" ; + sh:description "An organization that provides healthcare services" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + sh:property [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; + sh:nodeKind sh:IRI ; sh:order 3 ; - sh:path schema:name ], + sh:path linkml_common:classification ], + [ 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 6 ; + sh:order 4 ; 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:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 7 ; - sh:path schema:description ], + sh:order 2 ; + sh:path linkml_common:type ], [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; sh:order 5 ; - sh:path linkml_common:subtype ], - [ sh:class linkml_common:GeoPointLocation ; - sh:description "The geolocation of the place" ; + sh:path schema1:description ], + [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:order 0 ; + sh:path schema1:identifier ] ; + sh:targetClass linkml_common:HealthcareOrganization . + +linkml_common:HealthcareRole a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml_common:Person ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml_common:is_person ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; sh:order 1 ; - sh:path linkml_common:geolocation ], + sh:path linkml_common:type ] ; + sh:targetClass linkml_common:HealthcareRole . + +linkml_common:HydroelectricPlant a sh:NodeShape ; + sh:closed true ; + sh:description "A hydroelectric power plant" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class ; + sh:description "Operating expense for the plant" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 8 ; + sh:path linkml_common:opex ], + [ sh:class schema1:Place ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 2 ; + sh:path linkml_common:location ], + [ sh:class linkml_common:Organization ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml_common:operator ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 14 ; + sh:path linkml_common:ontology_types ], + [ sh:class schema1:Place ; + sh:description "The place where the entity is located" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 9 ; + sh:path linkml_common:located_at_place ], + [ sh:class linkml_common:Landform ; + sh:description "The dam used by the hydroelectric plant" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml_common:dam ], + [ sh:class linkml_common:PowerPlantType ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:plant_type ], + [ sh:class ; + sh:description "Capital expenditure for the plant" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path linkml_common:capex ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 11 ; + sh:path schema1:name ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; - sh:order 2 ; - sh:path schema:identifier ], + sh:order 10 ; + sh:path schema1:identifier ], [ 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 schema1:description ], + [ sh:datatype xsd:date ; + sh:maxCount 1 ; + sh:order 6 ; + sh:path linkml_common:decommissioning_date ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path linkml_common:classification ], + [ sh:class ; sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 4 ; + sh:path linkml_common:capacity ], + [ sh:datatype xsd:date ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path linkml_common:commissioning_date ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 12 ; sh:path linkml_common:type ] ; - sh:targetClass linkml_common:Landform . + sh:targetClass linkml_common:HydroelectricPlant . -linkml_common:LifeEvent a sh:NodeShape ; +linkml_common:InformationEntity a sh:NodeShape ; sh:closed true ; + sh:description "An entity that describes some information" ; 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:TimePoint ; + sh:property [ sh:class linkml:Any ; + sh:description "The thing that is being described" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 0 ; - sh:path linkml_common:starts_at ], + sh:path schema1:describes ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; - sh:order 9 ; + sh:order 5 ; sh:path linkml_common:ontology_types ], - [ sh:class linkml_common:Duration ; + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:IRI ; sh:order 4 ; - sh:path linkml_common:has_duration ], + sh:path linkml_common:classification ], [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 8 ; - sh:path linkml_common:subtype ], + sh:order 3 ; + 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 6 ; - sh:path schema:name ], - [ sh:class linkml_common:TimePoint ; + sh:path schema1:description ], + [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:minCount 1 ; sh:order 1 ; - sh:path linkml_common:ends_at ], - [ sh:class linkml_common:TimePoint ; + sh:path schema1:identifier ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; sh:order 2 ; - sh:path linkml_common:happens_at ], + sh:path schema1:name ] ; + sh:targetClass linkml_common:InformationEntity . + +linkml_common:InvestigativeProcess 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 9 ; + sh:path schema1:name ], + [ sh:class linkml_common:Duration ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path linkml_common:has_duration ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; - sh:order 5 ; - sh:path schema:identifier ], + sh:order 8 ; + sh:path schema1:identifier ], [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 10 ; - sh:path schema:description ], - [ sh:class linkml_common:TemporalInterval ; + sh:path linkml_common:type ], + [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; 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 . + 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:PhysicalDevice ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 2 ; + sh:path linkml_common:uses_physical_device ], + [ 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: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 13 ; + sh:path schema1:description ], + [ sh:class linkml_common:TemporalInterval ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path linkml_common:has_interval ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 5 ; + sh:path linkml_common:happens_at ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 11 ; + sh:path linkml_common:classification ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path linkml_common:ends_at ] ; + sh:targetClass linkml_common:InvestigativeProcess . -linkml_common:MaterialCollection a sh:NodeShape ; +linkml_common:LifeEvent a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "A unique identifier for a thing" ; + sh:property [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 7 ; - sh:path schema:identifier ], + sh:order 6 ; + sh:path schema1:name ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 0 ; + sh:path linkml_common:starts_at ], + [ sh:class linkml_common:TemporalInterval ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; - sh:path linkml_common:ends_at ], - [ sh:class linkml_common:Procedure ; + sh:path linkml_common:has_interval ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml_common:follows_procedure ], + sh:order 8 ; + sh:path linkml_common:classification ], + [ sh:class linkml_common:Duration ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path linkml_common:has_duration ], [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; sh:order 10 ; - sh:path linkml_common:subtype ], + sh:path schema1:description ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 9 ; + sh:path linkml_common:ontology_types ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 7 ; + sh:path linkml_common:type ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 5 ; + sh:path schema1:identifier ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 1 ; + sh:path linkml_common:ends_at ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path linkml_common:happens_at ] ; + 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:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 2 ; sh:path linkml_common:starts_at ], - [ sh:class linkml_common:TemporalInterval ; + [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 5 ; - sh:path linkml_common:has_interval ], + sh:minCount 1 ; + sh:order 7 ; + sh:path schema1:identifier ], + [ sh:class linkml_common:Duration ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path linkml_common:has_duration ], [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 9 ; sh:path linkml_common:type ], [ 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:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml_common:uses_physical_device ], + sh:order 12 ; + sh:path schema1:description ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 4 ; sh:path linkml_common:happens_at ], - [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; + [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:order 12 ; - sh:path schema:description ], - [ sh:class linkml_common:Duration ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + 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_duration ], + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 5 ; + sh:path linkml_common:has_interval ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 10 ; + sh:path linkml_common:classification ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; sh:order 11 ; - sh:path linkml_common:ontology_types ] ; + 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: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 name for a thing" ; + sh:maxCount 1 ; + sh:order 8 ; + sh:path schema1:name ] ; sh:targetClass linkml_common:MaterialCollection . linkml_common:MaterialProcessing 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:property [ sh:class linkml_common:Duration ; sh:maxCount 1 ; - sh:order 8 ; - sh:path schema:name ], + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path linkml_common:has_duration ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 2 ; sh:path linkml_common:starts_at ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 10 ; + sh:path linkml_common:classification ], + [ 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: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 12 ; - sh:path schema:description ], - [ 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 10 ; - sh:path linkml_common:subtype ], - [ sh:class linkml_common:TemporalInterval ; + sh:order 8 ; + sh:path schema1:name ], + [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 5 ; - sh:path linkml_common:has_interval ], + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path linkml_common:ends_at ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 7 ; - sh:path schema:identifier ], + sh:path schema1:identifier ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path linkml_common:happens_at ], [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 9 ; sh:path linkml_common:type ], - [ 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:TimePoint ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml_common:ends_at ], - [ sh:class linkml_common:TimePoint ; + [ sh:class linkml_common:TemporalInterval ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 4 ; - sh:path linkml_common:happens_at ], - [ sh:class linkml_common:Duration ; + sh:nodeKind sh:BlankNodeOrIRI ; + 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:nodeKind sh:BlankNode ; - sh:order 6 ; - sh:path linkml_common:has_duration ] ; + sh:order 12 ; + sh:path schema1:description ] ; sh:targetClass linkml_common:MaterialProcessing . linkml_common:Measurement a sh:NodeShape ; @@ -1322,101 +1744,268 @@ linkml_common:Measurement a sh:NodeShape ; sh:property [ sh:class linkml_common:Variable ; sh:description "The variable being measured" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; 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 2 ; - sh:path linkml_common:type ], [ sh:class ; sh:description "The quantity being measured" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 0 ; - sh:path linkml_common:quantity_measured ] ; + sh:path linkml_common:quantity_measured ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml_common:type ] ; sh:targetClass linkml_common:Measurement . -linkml_common:Observation a sh:NodeShape ; +linkml_common:MiningFacility a sh:NodeShape ; sh:closed true ; - sh:description "A statement about the state of something" ; + sh:description "A facility where mineral resources are extracted from the earth" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path linkml_common:type ], + [ sh:class schema1:Place ; + sh:description "The place where the entity is located" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 9 ; + sh:path linkml_common:located_at_place ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 10 ; + sh:path schema1:identifier ], + [ sh:class ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path linkml_common:area ], + [ sh:class ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path linkml_common:annual_production ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 11 ; + sh:path schema1:name ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 14 ; + sh:path linkml_common:ontology_types ], + [ sh:class linkml_common:Organization ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 4 ; + sh:path linkml_common:operator ], + [ sh:class ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 1 ; + sh:path linkml_common:depth ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 15 ; + sh:path schema1:description ], + [ sh:in ( "UNDERGROUND" "OPEN_PIT" "PLACER" "IN_SITU" ) ; sh:maxCount 1 ; sh:order 0 ; - sh:path linkml_common:type ] ; - sh:targetClass linkml_common:Observation . + sh:path linkml_common:mining_method ], + [ sh:class linkml_common:ExtractiveIndustryProduct ; + sh:nodeKind sh:IRI ; + sh:order 5 ; + sh:path linkml_common:products ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path linkml_common:classification ], + [ sh:class ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path linkml_common:production_capacity ], + [ sh:class ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 8 ; + sh:path linkml_common:reserves ], + [ sh:in ( "MINING_FACILITY" "WELL_FACILITY" "QUARRY_FACILITY" ) ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml_common:facility_type ] ; + sh:targetClass linkml_common:MiningFacility . -linkml_common:PlannedProcess a sh:NodeShape ; +linkml_common:NuclearPlant a sh:NodeShape ; sh:closed true ; - sh:description "A process that follows a defined procedure or plan" ; + sh:description "A nuclear power plant" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:TimePoint ; + sh:property [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path linkml_common:ontology_types ], + [ sh:class ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; - sh:path linkml_common:ends_at ], - [ sh:class linkml_common:TimePoint ; + sh:path linkml_common:capacity ], + [ sh:class ; + sh:description "Operating expense for the plant" ; 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:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path linkml_common:opex ], + [ sh:class ; + sh:description "Capital expenditure for the plant" ; sh:maxCount 1 ; - sh:order 10 ; - sh:path linkml_common:subtype ], + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path linkml_common:capex ], [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 12 ; - sh:path schema:description ], - [ sh:class linkml_common:Procedure ; + sh:order 11 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:PowerPlantType ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; - sh:path linkml_common:follows_procedure ], + sh:path linkml_common:plant_type ], [ 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:order 9 ; + sh:path schema1:identifier ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path schema1:name ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 12 ; + sh:path linkml_common:classification ], + [ sh:datatype xsd:date ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path linkml_common:decommissioning_date ], + [ sh:datatype xsd:date ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; sh:order 4 ; - sh:path linkml_common:happens_at ], - [ sh:class linkml_common:PhysicalDevice ; + sh:path linkml_common:commissioning_date ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 14 ; + sh:path schema1:description ], + [ sh:class linkml_common:Organization ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 2 ; + sh:path linkml_common:operator ], + [ sh:class schema1:Place ; + sh:description "The place where the entity is located" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 8 ; + sh:path linkml_common:located_at_place ], + [ sh:class schema1:Place ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 1 ; - sh:path linkml_common:uses_physical_device ], + sh:path linkml_common:location ] ; + sh:targetClass linkml_common:NuclearPlant . + +linkml_common:Observation a sh:NodeShape ; + sh:closed true ; + sh:description "A statement about the state of something" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 0 ; + sh:path linkml_common:type ] ; + sh:targetClass linkml_common:Observation . + +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: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:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 9 ; sh:path linkml_common:type ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 10 ; + sh:path linkml_common:classification ], + [ 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:Duration ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + 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:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + 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:order 8 ; + sh:path schema1:name ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path schema1:description ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path linkml_common:starts_at ], [ sh:class linkml_common:TemporalInterval ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 5 ; sh:path linkml_common:has_interval ], - [ sh:class linkml_common:Duration ; + [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 6 ; - sh:path linkml_common:has_duration ] ; + sh:nodeKind sh:BlankNodeOrIRI ; + 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 schema1:identifier ] ; sh:targetClass linkml_common:PlannedProcess . linkml_common:PointLocation a sh:NodeShape ; @@ -1427,247 +2016,388 @@ linkml_common:PointLocation a sh:NodeShape ; linkml_common:Publication a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "The title of the item" ; + sh:property [ sh:class linkml_common:Agent ; + sh:description "The person or organization who created the work" ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path dcterms:creator ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 0 ; - sh:path linkml_common:title ], + 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:description "A unique identifier for a thing" ; + sh:path schema1:description ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 7 ; - sh:path schema:identifier ], + sh:nodeKind sh:IRI ; + sh:order 10 ; + sh:path linkml_common:classification ], [ sh:datatype xsd:string ; sh:description "Keywords or tags used to describe this item" ; sh:order 6 ; - sh:path schema:keywords ], + sh:path schema1: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 schema1:contactPoint ], [ sh:datatype xsd:string ; 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:description "A person or organization that contributed to the creation of the work" ; sh:nodeKind sh:IRI ; - sh:order 5 ; - sh:path schema:contactPoint ], + sh:order 4 ; + sh:path dcterms:contributor ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 11 ; + sh:path linkml_common:ontology_types ], [ sh:datatype xsd:string ; sh:description "Information about rights held in and over the item" ; sh:maxCount 1 ; sh:order 2 ; 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 3 ; - sh:path ], - [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; - sh:order 9 ; - sh:path linkml_common:type ], - [ sh:class linkml_common:Concept ; - sh:nodeKind sh:IRI ; - sh:order 11 ; - sh:path linkml_common:ontology_types ], + sh:minCount 1 ; + sh:order 7 ; + sh:path schema1:identifier ], [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:description "The title of the item" ; 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 4 ; - sh:path ], + sh:order 0 ; + sh:path linkml_common:title ], [ sh:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; sh:order 8 ; - sh:path schema:name ] ; + sh:path schema1:name ] ; sh:targetClass linkml_common:Publication . -linkml_common:RawMaterial a sh:NodeShape ; +linkml_common:QuarryFacility a sh:NodeShape ; sh:closed true ; + sh:description "A facility where stone, sand, or gravel are extracted from the earth" ; 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 schema:name ], + sh:order 8 ; + sh:path schema1:name ], + [ sh:class linkml_common:ExtractiveIndustryProduct ; + sh:nodeKind sh:IRI ; + sh:order 2 ; + sh:path linkml_common:products ], + [ sh:class schema1:Place ; + sh:description "The place where the entity is located" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 6 ; + sh:path linkml_common:located_at_place ], + [ 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 schema1:identifier ], + [ sh:in ( "MINING_FACILITY" "WELL_FACILITY" "QUARRY_FACILITY" ) ; + sh:maxCount 1 ; + sh:order 0 ; + sh:path linkml_common:facility_type ], + [ sh:class ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 5 ; + sh:path linkml_common:reserves ], + [ sh:class ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path linkml_common:production_capacity ], + [ sh:class ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path linkml_common:annual_production ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 10 ; + sh:path linkml_common:classification ], [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path schema:description ], + sh:order 12 ; + sh:path schema1:description ], [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 2 ; + sh:order 9 ; sh:path linkml_common:type ], - [ sh:class linkml_common:Concept ; + [ sh:class linkml_common:Organization ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:operator ] ; + sh:targetClass linkml_common:QuarryFacility . + +linkml_common:RawMaterial 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:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + 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 schema:identifier ], + sh:path schema1: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 1 ; + sh:path schema1:name ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; sh:order 3 ; - sh:path linkml_common:subtype ] ; + sh:path linkml_common:classification ] ; sh:targetClass linkml_common:RawMaterial . 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:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 0 ; sh:path linkml_common:type ] ; sh:targetClass linkml_common:Relationship . -linkml_common:SampleCollectionProcess a sh:NodeShape ; +linkml_common:RenewablePlant a sh:NodeShape ; sh:closed true ; + sh:description "A power plant that uses renewable energy sources" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; + sh:property [ sh:class schema1:Place ; sh:maxCount 1 ; - sh:order 15 ; - sh:path schema:description ], - [ sh:class linkml_common:InvestigativeProtocol ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:location ], + [ sh:class linkml_common:Organization ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 2 ; - sh:path linkml_common:follows_procedure ], - [ sh:class linkml_common:SampleMaterial ; + sh:path linkml_common:operator ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; 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:order 12 ; + sh:path linkml_common:classification ], + [ sh:class ; + sh:description "Capital expenditure for the plant" ; sh:maxCount 1 ; - sh:order 13 ; - sh:path linkml_common:subtype ], + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path linkml_common:capex ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; + sh:order 9 ; + sh:path schema1:identifier ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 14 ; + sh:path schema1:description ], + [ sh:datatype xsd:date ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path linkml_common:decommissioning_date ], + [ sh:datatype xsd:date ; + sh:maxCount 1 ; + sh:order 4 ; + sh:path linkml_common:commissioning_date ], + [ sh:class linkml_common:PowerPlantType ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml_common:plant_type ], + [ sh:class ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path linkml_common:capacity ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path linkml_common:ontology_types ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; sh:order 10 ; - sh:path schema:identifier ], + sh:path schema1:name ], [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 12 ; + sh:order 11 ; sh:path linkml_common:type ], - [ sh:class linkml_common:Duration ; + [ sh:class schema1:Place ; + sh:description "The place where the entity is located" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 9 ; - sh:path linkml_common:has_duration ], - [ sh:class linkml_common:TemporalInterval ; + sh:nodeKind sh:IRI ; + sh:order 8 ; + sh:path linkml_common:located_at_place ], + [ sh:class ; + sh:description "Operating expense for the plant" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path linkml_common:opex ] ; + sh:targetClass linkml_common:RenewablePlant . + +linkml_common:SampleCollectionProcess a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml_common:TemporalInterval ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 8 ; sh:path linkml_common:has_interval ], - [ sh:class linkml_common:PhysicalDevice ; + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml_common:uses_physical_device ], + sh:order 13 ; + sh:path linkml_common:classification ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; sh:order 14 ; sh:path linkml_common:ontology_types ], + [ 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:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path linkml_common:happens_at ], [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 11 ; - sh:path schema:name ], + sh:order 12 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:NamedThing ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:collected_from ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 15 ; + sh:path schema1:description ], + [ sh:class linkml_common:SampleMaterial ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml_common:material_collected ], [ sh:class linkml_common:Investigation ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 3 ; sh:path linkml_common:part_of ], - [ sh:class linkml_common:NamedThing ; + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 11 ; + sh:path schema1:name ], + [ sh:class linkml_common:InvestigativeProtocol ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml_common:collected_from ], - [ sh:class linkml_common:TimePoint ; + sh:order 2 ; + sh:path linkml_common:follows_procedure ], + [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 5 ; - sh:path linkml_common:starts_at ], + sh:minCount 1 ; + sh:order 10 ; + sh:path schema1:identifier ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; 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:happens_at ] ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 5 ; + sh:path linkml_common:starts_at ], + [ sh:class linkml_common:Duration ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 9 ; + sh:path linkml_common:has_duration ] ; sh:targetClass linkml_common:SampleCollectionProcess . linkml_common:SampleProcessing a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ 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 3 ; - sh:path linkml_common:ends_at ], - [ sh:class linkml_common:TemporalInterval ; + sh:property [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; 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:order 9 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:Duration ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 7 ; - sh:path schema:identifier ], + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path linkml_common:has_duration ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 10 ; + sh:path linkml_common:classification ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 4 ; - sh:path linkml_common:happens_at ], + sh:nodeKind sh:BlankNodeOrIRI ; + 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: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:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; sh:order 12 ; - sh:path schema:description ], + sh:path schema1:description ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; sh:order 11 ; @@ -1676,17 +2406,32 @@ linkml_common:SampleProcessing a sh:NodeShape ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; sh:order 8 ; - sh:path schema:name ], - [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:path schema1:name ], + [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:order 9 ; - sh:path linkml_common:type ], + sh:nodeKind sh:BlankNodeOrIRI ; + 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 schema1:identifier ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 2 ; - sh:path linkml_common:starts_at ] ; + sh:path linkml_common:starts_at ], + [ sh:class linkml_common:TemporalInterval ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 5 ; + sh:path linkml_common:has_interval ], + [ sh:class linkml_common:PhysicalDevice ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:uses_physical_device ] ; sh:targetClass linkml_common:SampleProcessing . linkml_common:Service a sh:NodeShape ; @@ -1694,76 +2439,160 @@ linkml_common:Service a sh:NodeShape ; 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:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 0 ; sh:path linkml_common:type ] ; sh:targetClass linkml_common:Service . -linkml_common:Specification a sh:NodeShape ; +linkml_common:SolarPlant a sh:NodeShape ; sh:closed true ; - sh:description "A specification of a thing" ; + sh:description "A solar power plant" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:Concept ; - sh:nodeKind sh:IRI ; + sh:property [ sh:datatype xsd:date ; + sh:maxCount 1 ; sh:order 4 ; - sh:path linkml_common:ontology_types ], + sh:path linkml_common:commissioning_date ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 12 ; + sh:path linkml_common:classification ], [ sh:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:order 1 ; - sh:path schema:name ], + sh:order 10 ; + sh:path schema1:name ], + [ sh:class ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path linkml_common:capacity ], [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path schema:description ], + sh:order 14 ; + sh:path schema1:description ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path linkml_common:ontology_types ], + [ sh:class linkml_common:Organization ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 2 ; + sh:path linkml_common:operator ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; - sh:order 0 ; - sh:path schema:identifier ], + sh:order 9 ; + sh:path schema1:identifier ], [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml_common:subtype ], - [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:order 11 ; + sh:path linkml_common:type ], + [ sh:datatype xsd:date ; sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml_common:type ] ; - sh:targetClass linkml_common:Specification . + sh:order 5 ; + sh:path linkml_common:decommissioning_date ], + [ sh:class schema1:Place ; + sh:description "The place where the entity is located" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 8 ; + sh:path linkml_common:located_at_place ], + [ sh:class schema1:Place ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:location ], + [ sh:class ; + sh:description "Capital expenditure for the plant" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path linkml_common:capex ], + [ sh:class ; + sh:description "Operating expense for the plant" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path linkml_common:opex ], + [ sh:class linkml_common:PowerPlantType ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml_common:plant_type ] ; + sh:targetClass linkml_common:SolarPlant . -linkml_common:StudyDesign a sh:NodeShape ; +linkml_common:Specification a sh:NodeShape ; sh:closed true ; + sh:description "A specification of a thing" ; 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:path schema1:identifier ], [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml_common:subtype ], + 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:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; sh:order 1 ; - sh:path schema:name ], + sh:path schema1:name ], [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml_common:classification ] ; + sh:targetClass linkml_common:Specification . + +linkml_common:StudyDesign 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 schema:description ], + 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: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:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml_common:classification ], [ 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:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 2 ; sh:path linkml_common:type ] ; @@ -1773,8 +2602,12 @@ 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:property [ sh:maxCount 1 ; + sh:or ( [ sh:class linkml_common:TimePoint ] [ sh:class linkml_common:TemporalInterval ] [ sh:class linkml_common:Event ] ) ; + sh:order 1 ; + sh:path linkml_common:relative_to ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 2 ; sh:path linkml_common:type ], @@ -1782,32 +2615,27 @@ linkml_common:TemporalRelationship a sh:NodeShape ; sh:in ( "BEFORE" "AFTER" "AT_SAME_TIME_AS" ) ; sh:maxCount 1 ; sh:order 0 ; - sh:path linkml_common:predicate ], - [ sh:class schema:Thing ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml_common:relative_to ] ; + sh:path linkml_common:predicate ] ; 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 2 ; - sh:path linkml_common:type ], - [ sh:class linkml_common:TimePoint ; + sh:property [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 1 ; sh:path linkml_common:ends_at ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 0 ; - sh:path linkml_common:starts_at ] ; + sh:path linkml_common:starts_at ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml_common:type ] ; sh:targetClass linkml_common:TimePointOrTemporalInterval . linkml_common:UnitConversionOperation a sh:NodeShape ; @@ -1816,99 +2644,273 @@ linkml_common:UnitConversionOperation a sh:NodeShape ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:class ; sh:description "The output unit" ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; 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:nodeKind sh:BlankNodeOrIRI ; 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:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; - sh:path linkml_common:immediate_preceding_steps ] ; + sh:path linkml_common:immediate_preceding_steps ], + [ sh:class ; + sh:description "The input unit" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 0 ; + sh:path linkml_common:inputs ] ; sh:targetClass linkml_common:UnitConversionOperation . +linkml_common:WellFacility a sh:NodeShape ; + sh:closed true ; + sh:description "A facility where fluid resources (e.g., oil, gas, water) are extracted from the earth" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class schema1:Place ; + sh:description "The place where the entity is located" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 8 ; + sh:path linkml_common:located_at_place ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 11 ; + sh:path linkml_common:type ], + [ sh:class ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 1 ; + sh:path linkml_common:depth ], + [ sh:class ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path linkml_common:reserves ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 12 ; + sh:path linkml_common:classification ], + [ sh:class ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path linkml_common:annual_production ], + [ sh:class ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 5 ; + sh:path linkml_common:production_capacity ], + [ sh:in ( "MINING_FACILITY" "WELL_FACILITY" "QUARRY_FACILITY" ) ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml_common:facility_type ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path schema1:name ], + [ sh:in ( "OIL" "GAS" "WATER" "INJECTION" ) ; + sh:maxCount 1 ; + sh:order 0 ; + sh:path linkml_common:well_type ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path linkml_common:ontology_types ], + [ sh:class linkml_common:Organization ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml_common:operator ], + [ sh:class linkml_common:ExtractiveIndustryProduct ; + sh:nodeKind sh:IRI ; + sh:order 4 ; + sh:path linkml_common:products ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 14 ; + sh:path schema1:description ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 9 ; + sh:path schema1:identifier ] ; + sh:targetClass linkml_common:WellFacility . + +linkml_common:WindFarm a sh:NodeShape ; + sh:closed true ; + sh:description "A wind farm" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path linkml_common:capacity ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path linkml_common:ontology_types ], + [ sh:class ; + sh:description "Operating expense for the plant" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path linkml_common:opex ], + [ sh:class schema1:Place ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:location ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 12 ; + sh:path linkml_common:classification ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 14 ; + sh:path schema1:description ], + [ sh:class linkml_common:Organization ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 2 ; + sh:path linkml_common:operator ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 9 ; + sh:path schema1:identifier ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path schema1:name ], + [ sh:class schema1:Place ; + sh:description "The place where the entity is located" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 8 ; + sh:path linkml_common:located_at_place ], + [ sh:datatype xsd:date ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path linkml_common:decommissioning_date ], + [ sh:class linkml_common:PowerPlantType ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml_common:plant_type ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 11 ; + sh:path linkml_common:type ], + [ sh:datatype xsd:date ; + sh:maxCount 1 ; + sh:order 4 ; + sh:path linkml_common:commissioning_date ], + [ sh:class ; + sh:description "Capital expenditure for the plant" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path linkml_common:capex ] ; + sh:targetClass linkml_common:WindFarm . + +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. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + 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:property [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 6 ; + sh:path schema1:description ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml_common:definition ], + sh:order 4 ; + sh:path linkml_common:classification ], [ 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:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 1 ; - sh:path schema:identifier ], + sh:order 2 ; + sh:path schema1:name ], [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 3 ; sh:path linkml_common:type ], - [ 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 description for a thing" ; + [ sh:class linkml_common:ClinicalCohortDefinition ; sh:maxCount 1 ; - sh:order 6 ; - sh:path schema:description ], - [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml_common:definition ], + [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; - sh:order 2 ; - sh:path schema:name ] ; + sh:minCount 1 ; + sh:order 1 ; + sh:path schema1:identifier ] ; 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 name for a thing" ; + sh:property [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; - sh:order 1 ; - sh:path schema:name ], + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml_common:classification ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + 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:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; sh:order 5 ; - sh:path schema:description ], + sh:path schema1:description ], [ 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 2 ; - sh:path linkml_common:type ], + 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 schema:identifier ] ; + sh:path schema1:identifier ] ; sh:targetClass linkml_common:ClinicalCohortDefinition . linkml_common:CurrencyConcept a sh:NodeShape ; @@ -1916,56 +2918,57 @@ linkml_common:CurrencyConcept a sh:NodeShape ; sh:description "A currency" ; 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 name for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 1 ; - sh:path schema:name ], + 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 type for a thing" ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml_common:type ], + 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 schema:description ], + sh:path schema1:description ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 0 ; - sh:path schema:identifier ] ; + sh:path schema1:identifier ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml_common:classification ] ; sh:targetClass linkml_common:CurrencyConcept . linkml_common:EngineeringProcess a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ 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:property [ 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:TimePoint ; + sh:path schema1:description ], + [ sh:class linkml_common:EngineeringProcess ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml_common:ends_at ], + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:part_of ], + [ sh:class linkml_common:EngineeringSpecification ; + 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:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 9 ; sh:path linkml_common:type ], @@ -1973,305 +2976,256 @@ linkml_common:EngineeringProcess a sh:NodeShape ; sh:nodeKind sh:IRI ; sh:order 11 ; sh:path linkml_common:ontology_types ], - [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + [ sh:class linkml_common:TemporalInterval ; sh:maxCount 1 ; - sh:order 8 ; - sh:path schema:name ], + sh:nodeKind sh:BlankNodeOrIRI ; + 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:EngineeringSpecification ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml_common:follows_procedure ], - [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path linkml_common:ends_at ], + [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:order 10 ; - sh:path linkml_common:subtype ], + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path linkml_common:happens_at ], [ sh:class linkml_common:Duration ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 6 ; sh:path linkml_common:has_duration ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 10 ; + sh:path linkml_common:classification ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 4 ; - sh:path linkml_common:happens_at ], + sh:nodeKind sh:BlankNodeOrIRI ; + 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 7 ; - sh:path schema:identifier ], - [ sh:class linkml_common:EngineeringProcess ; + sh:path schema1:identifier ], + [ 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:part_of ] ; + sh:order 8 ; + sh:path schema1:name ] ; sh:targetClass linkml_common:EngineeringProcess . -linkml_common:EngineeringSpecification a sh:NodeShape ; +linkml_common:FoodIngredient 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 "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: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 schema:identifier ], + sh:path linkml_common:has_quantity_kind ], [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; 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 . + sh:path linkml_common:type ] ; + sh:targetClass linkml_common:FoodIngredient . -linkml_common:Event a sh:NodeShape ; +linkml_common:FoodProcessing a sh:NodeShape ; sh:closed true ; - sh:description "A thing that happens" ; 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 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:property [ sh:class linkml_common:Procedure ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:IRI ; sh:order 0 ; - sh:path linkml_common:starts_at ], - [ sh:class linkml_common:TemporalInterval ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml_common:has_interval ], - [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; - sh:maxCount 1 ; - sh:order 6 ; - sh:path schema:name ], + sh:path linkml_common:follows_procedure ], [ sh:class linkml_common:Duration ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 4 ; + sh:nodeKind sh:BlankNodeOrIRI ; + 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 8 ; - sh:path linkml_common:subtype ], - [ sh:class linkml_common:Concept ; - sh:nodeKind sh:IRI ; - sh:order 9 ; - sh:path linkml_common:ontology_types ], - [ sh:class linkml_common:TimePoint ; + sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml_common:ends_at ], - [ sh:description "A unique identifier for a thing" ; + sh:order 12 ; + sh:path schema1:description ], + [ sh:class linkml_common:TemporalInterval ; sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 5 ; - sh:path schema:identifier ] ; - sh:targetClass linkml_common:Event . - -linkml_common:FoodIngredient 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:QuantityKind ; - sh:description "The kind of quantity" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 0 ; - 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:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; - sh:maxCount 1 ; - sh:order 8 ; - sh:path schema:name ], + 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:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:path schema1:identifier ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; + sh:nodeKind sh:IRI ; 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:path linkml_common:classification ], [ sh:datatype xsd:string ; - sh:description "A human-readable description for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 12 ; - sh:path schema:description ], + sh:order 9 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + 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:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 8 ; + sh:path schema1:name ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path linkml_common:starts_at ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path linkml_common:ends_at ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; sh:order 11 ; - sh:path linkml_common:ontology_types ], - [ sh:class linkml_common:Procedure ; + sh:path linkml_common:ontology_types ] ; + sh:targetClass linkml_common:FoodProcessing . + +linkml_common:FossilFuel a sh:NodeShape ; + sh:closed true ; + sh:description "A type of fossil fuel" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml_common:follows_procedure ], + sh:order 3 ; + sh:path linkml_common:classification ], [ 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:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; sh:order 2 ; - sh:path linkml_common:starts_at ], - [ sh:class linkml_common:TimePoint ; + sh:path linkml_common:type ], + [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:minCount 1 ; + sh:order 0 ; + sh:path schema1:identifier ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; sh:order 4 ; - sh:path linkml_common:happens_at ], - [ sh:class linkml_common:TimePoint ; + 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 3 ; - sh:path linkml_common:ends_at ], - [ sh:class linkml_common:Duration ; + sh:order 1 ; + sh:path schema1:name ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 6 ; - sh:path linkml_common:has_duration ] ; - sh:targetClass linkml_common:FoodProcessing . + sh:order 5 ; + sh:path schema1:description ] ; + sh:targetClass linkml_common:FossilFuel . linkml_common:HealthcareEncounter a sh:NodeShape ; sh:closed true ; + sh:description "An interaction between a patient and one or more healthcare providers" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:Concept ; + sh:property [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 9 ; + sh:path linkml_common:type ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 7 ; + sh:path schema1:identifier ], + [ 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 9 ; - sh:path linkml_common:type ], - [ sh:class linkml_common:TimePoint ; + sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml_common:starts_at ], + sh:order 12 ; + sh:path schema1:description ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; sh:path linkml_common:ends_at ], [ sh:class linkml_common:TemporalInterval ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 5 ; sh:path linkml_common:has_interval ], - [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:order 8 ; - sh:path schema:name ], - [ sh:description "An enum with a more specific type" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path linkml_common:happens_at ], + [ sh:class linkml_common:Duration ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path linkml_common:has_duration ], + [ sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; 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 10 ; - sh:path linkml_common:subtype ], - [ sh:description "A unique identifier for a thing" ; + sh:path linkml_common:classification ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 7 ; - sh:path schema:identifier ], + sh:order 8 ; + sh:path schema1:name ], [ sh:class linkml_common:HealthcareProvider ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; 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 description for a thing" ; - sh:maxCount 1 ; - sh:order 12 ; - sh:path schema:description ], + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path linkml_common:starts_at ], [ sh:class linkml_common:Patient ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 0 ; - 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:path linkml_common:patient ] ; sh:targetClass linkml_common:HealthcareEncounter . linkml_common:HealthcareProvider a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:Person ; + sh:property [ sh:class linkml_common:HealthcareSite ; + 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:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 3 ; sh:path linkml_common:type ], @@ -2279,12 +3233,7 @@ linkml_common:HealthcareProvider a sh:NodeShape ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; - sh:path linkml_common:speciality ], - [ sh:class linkml_common:HealthcareSite ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml_common:care_site ] ; + sh:path linkml_common:speciality ] ; sh:targetClass linkml_common:HealthcareProvider . linkml_common:HealthcareSite a sh:NodeShape ; @@ -2293,68 +3242,123 @@ linkml_common:HealthcareSite a sh:NodeShape ; 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:order 8 ; + sh:path schema1:description ], + [ sh:class schema1:PostalAddress ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 0 ; sh:path linkml_common:address ], + [ sh:class linkml_common:GeoBoxLocation ; + sh:description "The bounding coordinates of the place" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path linkml_common:bounding_coordinates ], [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 5 ; - sh:path linkml_common:subtype ], + sh:path linkml_common:type ], + [ sh:class linkml_common:GeoPointLocation ; + sh:description "The geolocation of the place" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 1 ; + sh:path linkml_common:geolocation ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; - sh:order 6 ; + sh:order 7 ; 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 schema:identifier ], - [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; - sh:maxCount 1 ; sh:order 3 ; - sh:path schema:name ], + sh:path schema1:identifier ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 6 ; + sh:path linkml_common:classification ], [ 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 4 ; - sh:path linkml_common:type ] ; + sh:path schema1:name ] ; sh:targetClass linkml_common:HealthcareSite . -linkml_common:NamedThing 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:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; + sh:order 3 ; + sh:path schema1:identifier ], + [ sh:class linkml_common:GeoBoxLocation ; + sh:description "The bounding coordinates of the place" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path linkml_common:bounding_coordinates ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 6 ; + sh:path linkml_common:classification ], + [ sh:class schema1:PostalAddress ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 0 ; - sh:path schema:identifier ], + sh:path linkml_common:address ], [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 2 ; + sh:order 5 ; 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 schema:description ], + sh:order 8 ; + sh:path schema1:description ], + [ sh:class linkml_common:GeoPointLocation ; + sh:description "The geolocation of the place" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 1 ; + sh:path linkml_common:geolocation ], [ 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 4 ; + sh:path schema1:name ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 7 ; + sh:path linkml_common:ontology_types ] ; + sh:targetClass linkml_common:Landform . + +linkml_common:NamedThing a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; + sh:nodeKind sh:IRI ; sh:order 3 ; - sh:path linkml_common:subtype ], + sh:path linkml_common:classification ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:order 0 ; + sh:path schema1: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:class linkml_common:Concept ; sh:nodeKind sh:IRI ; sh:order 4 ; @@ -2363,117 +3367,256 @@ linkml_common:NamedThing a sh:NodeShape ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; sh:order 1 ; - sh:path schema:name ] ; + sh:path schema1:name ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml_common:type ] ; sh:targetClass linkml_common:NamedThing . -linkml_common:Organization a sh:NodeShape ; +linkml_common:PowerPlant a sh:NodeShape ; + sh:closed true ; + sh:description "A facility for generating electrical power" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml_common:Organization ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 2 ; + sh:path linkml_common:operator ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path linkml_common:ontology_types ], + [ sh:class ; + sh:description "Capital expenditure for the plant" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path linkml_common:capex ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 14 ; + sh:path schema1:description ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 9 ; + sh:path schema1:identifier ], + [ sh:class schema1:Place ; + sh:description "The place where the entity is located" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 8 ; + sh:path linkml_common:located_at_place ], + [ sh:class ; + sh:description "Operating expense for the plant" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path linkml_common:opex ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 12 ; + sh:path linkml_common:classification ], + [ sh:class ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path linkml_common:capacity ], + [ sh:class schema1:Place ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml_common:location ], + [ sh:datatype xsd:date ; + sh:maxCount 1 ; + sh:order 4 ; + sh:path linkml_common:commissioning_date ], + [ sh:datatype xsd:date ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path linkml_common:decommissioning_date ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 11 ; + sh:path linkml_common:type ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path schema1:name ], + [ sh:class linkml_common:PowerPlantType ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml_common:plant_type ] ; + sh:targetClass linkml_common:PowerPlant . + +linkml_common:SampleMaterial 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: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:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml_common:type ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; + sh:nodeKind sh:IRI ; sh:order 3 ; - sh:path linkml_common:subtype ], + sh:path linkml_common:classification ], [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; sh:order 5 ; - sh:path schema:description ], + sh:path schema1:description ], [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 4 ; + sh:path linkml_common:ontology_types ] ; + sh:targetClass linkml_common:SampleMaterial . + +linkml_common:EngineeringSpecification 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:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml_common:classification ], [ 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 2 ; - sh:path linkml_common:type ], + 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 schema:name ] ; - sh:targetClass linkml_common:Organization . + 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:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml_common:type ] ; + sh:targetClass linkml_common:EngineeringSpecification . -linkml_common:SampleMaterial a sh:NodeShape ; +linkml_common:Event a sh:NodeShape ; sh:closed true ; + sh:description "A thing that happens" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:property [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 8 ; + sh:path linkml_common:classification ], + [ sh:class linkml_common:TemporalInterval ; sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; - sh:path linkml_common:subtype ], + sh:path linkml_common:has_interval ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 9 ; + sh:path linkml_common:ontology_types ], [ 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 10 ; + sh:path schema1:description ], + [ sh:class linkml_common:TimePoint ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path linkml_common:happens_at ], + [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 1 ; - sh:path schema:name ], + sh:path linkml_common:ends_at ], [ 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:name ], + [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; + sh:minCount 1 ; 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:path schema1:identifier ], [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 2 ; + sh:order 7 ; sh:path linkml_common:type ], - [ sh:description "A unique identifier for a thing" ; + [ sh:class linkml_common:Duration ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path schema:identifier ] ; - sh:targetClass linkml_common:SampleMaterial . - -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:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path linkml_common:has_duration ], + [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 0 ; - sh:path linkml_common:type ] ; - sh:targetClass schema:Thing . + sh:path linkml_common:starts_at ] ; + sh:targetClass linkml_common:Event . 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:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path schema:description ], + sh:order 1 ; + sh:path schema1:name ], [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 2 ; sh:path linkml_common:type ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml_common:classification ], [ 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 schema:name ], + 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 schema:identifier ], + sh:path schema1:identifier ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; sh:order 4 ; @@ -2483,57 +3626,62 @@ linkml_common:UnitConcept a sh:NodeShape ; linkml_common:Variable a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:UnitConcept ; + sh:property [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml_common:type ], + [ 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:datatype xsd:string ; - sh:description "A type for a thing" ; - sh:maxCount 1 ; - sh:order 1 ; - sh:path linkml_common:type ] ; + sh:path linkml_common:allowed_units ] ; sh:targetClass linkml_common:Variable . linkml_common:InvestigativeProtocol a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; 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:path linkml_common:classification ], + [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; - sh:order 5 ; - sh:path schema:description ], + sh:order 0 ; + sh:path linkml_common:protocols_io_url ], [ 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 2 ; - sh:path linkml_common:type ], + sh:path schema1:name ], [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 3 ; - sh:path linkml_common:subtype ], + sh:path linkml_common:type ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 5 ; + 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: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 human-readable name for a thing" ; - sh:maxCount 1 ; sh:order 1 ; - sh:path schema:name ] ; + sh:path schema1:identifier ] ; 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:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 1 ; sh:path linkml_common:type ], @@ -2549,45 +3697,120 @@ linkml:Any a sh:NodeShape ; sh:ignoredProperties ( rdf:type ) ; sh:targetClass linkml:Any . -schema:PostalAddress a sh:NodeShape ; +schema1: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 "The city" ; sh:maxCount 1 ; sh:order 2 ; sh:path linkml_common:city ], [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "The street address" ; + sh:maxCount 1 ; + sh:order 0 ; + sh:path linkml_common:street_address ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 6 ; sh:path linkml_common:type ], + [ 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:datatype xsd:string ; - sh:description "The street address" ; + 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 "The state" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml_common:state ] ; + sh:targetClass schema1:PostalAddress . + +linkml_common:ExtractiveIndustryProduct a sh:NodeShape ; + sh:closed true ; + sh:description "A product extracted from an extractive industry facility" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 6 ; + sh:path linkml_common:classification ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 7 ; + sh:path linkml_common:ontology_types ], + [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 3 ; + sh:path schema1:identifier ], + [ sh:in ( "MINERAL" "METAL" "COAL" "OIL" "GAS" "STONE" "SAND" "GRAVEL" ) ; sh:maxCount 1 ; sh:order 0 ; - sh:path linkml_common:street_address ], + sh:path linkml_common:product_type ], + [ sh:class linkml_common:EngineeringSpecification ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 2 ; + sh:path linkml_common:processing_method ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path linkml_common:type ], + [ sh:class ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 1 ; + sh:path linkml_common:grade ], + [ sh:datatype xsd:string ; + sh:description "A human-readable description for a thing" ; + sh:maxCount 1 ; + sh:order 8 ; + sh:path schema1:description ], [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:order 4 ; + sh:path schema1:name ] ; + sh:targetClass linkml_common:ExtractiveIndustryProduct . + +linkml_common:GeoBoxLocation a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:decimal ; + sh:description "The westernmost coordinate of the location" ; + sh:maxCount 1 ; + sh:order 0 ; + sh:path linkml_common:west_bounding_coordinate ], + [ sh:datatype xsd:decimal ; + sh:description "The northernmost coordinate of the location" ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml_common:north_bounding_coordinate ], + [ sh:datatype xsd:decimal ; + sh:description "The easternmost coordinate of the location" ; sh:maxCount 1 ; sh:order 1 ; - sh:path linkml_common:street_address_additional ] ; - sh:targetClass schema:PostalAddress . + sh:path linkml_common:east_bounding_coordinate ], + [ sh:datatype xsd:decimal ; + sh:description "The southernmost coordinate of the location" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml_common:south_bounding_coordinate ] ; + sh:targetClass linkml_common:GeoBoxLocation . linkml_common:GeoPointLocation a sh:NodeShape ; sh:closed true ; @@ -2612,270 +3835,354 @@ linkml_common:GeoPointLocation a sh:NodeShape ; 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: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:path schema1:name ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 5 ; + sh:path linkml_common:classification ], [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; sh:order 7 ; - sh:path schema:description ], + sh:path schema1:description ], + [ sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:order 0 ; + sh:path linkml_common:objectives ], [ sh:class linkml_common:Variable ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 1 ; 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:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 5 ; - sh:path linkml_common:subtype ], - [ sh:datatype xsd:string ; + sh:order 4 ; + sh:path linkml_common:type ], + [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; - sh:order 0 ; - sh:path linkml_common:objectives ] ; + sh:minCount 1 ; + sh:order 2 ; + sh:path schema1:identifier ], + [ sh:class linkml_common:Concept ; + sh:nodeKind sh:IRI ; + sh:order 6 ; + sh:path linkml_common:ontology_types ] ; 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:property [ sh:class linkml_common:MathematicalOperation ; sh:description "The parts of the process" ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; 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:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; - sh:path linkml_common:immediate_preceding_steps ] ; + sh:path linkml_common:immediate_preceding_steps ], + [ sh:class linkml:Any ; + sh:description "The inputs to the operation" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 0 ; + sh:path linkml_common:inputs ], + [ sh:class linkml:Any ; + sh:description "The outputs of the operation" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 1 ; + sh:path linkml_common:outputs ] ; 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:property [ 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 schema:identifier ], + sh:path schema1: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:datatype xsd:date ; + sh:description "Date on which a person is born" ; sh:maxCount 1 ; - sh:order 7 ; - sh:path linkml_common:subtype ], + sh:order 1 ; + sh:path schema1:birthDate ], [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 5 ; - sh:path schema:name ], + sh:order 6 ; + sh:path linkml_common:type ], [ sh:datatype xsd:string ; sh:description "The main email address of a person" ; sh:maxCount 1 ; sh:order 0 ; - sh:path schema:email ; + sh:path schema1: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:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; - sh:order 9 ; - sh:path schema:description ], + sh:nodeKind sh:IRI ; + sh:order 7 ; + sh:path linkml_common:classification ], [ 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:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:order 1 ; - sh:path schema:birthDate ] ; + sh:order 5 ; + sh:path schema1:name ] ; sh:targetClass linkml_common:Person . 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 "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:property [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 0 ; - sh:path schema:identifier ], + sh:path schema1:identifier ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml_common:classification ], + [ 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:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + 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:targetClass linkml_common:Procedure . + +linkml_common:QuantityKind 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:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 2 ; sh:path linkml_common:type ], [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml_common:ontology_types ], + sh:order 3 ; + sh:path linkml_common:classification ], [ sh:datatype xsd:string ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; sh:order 5 ; - sh:path schema:description ], + 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 schema:name ] ; - sh:targetClass linkml_common:Procedure . + 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:targetClass linkml_common:QuantityKind . -linkml_common:QuantityKind a sh:NodeShape ; +linkml_common:PowerPlantType a sh:NodeShape ; sh:closed true ; + sh:description "The type of power plant" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:Concept ; + sh:property [ sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 0 ; + sh:path schema1:identifier ], + [ 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:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; sh:maxCount 1 ; + sh:nodeKind sh:IRI ; sh:order 3 ; - sh:path linkml_common:subtype ], + sh:path linkml_common:classification ], [ 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 2 ; - sh:path linkml_common:type ], + 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 schema:name ], + 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 schema:description ], - [ sh:description "A unique identifier for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path schema:identifier ] ; - sh:targetClass linkml_common:QuantityKind . + sh:order 2 ; + sh:path linkml_common:type ] ; + sh:targetClass linkml_common:PowerPlantType . - a sh:NodeShape ; + a sh:NodeShape ; sh:closed true ; + sh:description "A quantity is a property that can be measured or counted" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml_common:QuantityKind ; - sh:description "The kind of quantity" ; + sh:property [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + 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:float ; + sh:description "The value of the quantity" ; + sh:maxCount 1 ; sh:order 0 ; - sh:path linkml_common:has_quantity_kind ], - [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:path linkml_common:value ], + [ sh:class linkml_common:QuantityKind ; + sh:description "The kind of quantity" ; sh:maxCount 1 ; - sh:order 1 ; - sh:path linkml_common:type ] ; - sh:targetClass . + sh:nodeKind sh:IRI ; + sh:order 2 ; + sh:path linkml_common:has_quantity_kind ] ; + sh:targetClass . linkml_common:Agent a sh:NodeShape ; sh:closed true ; sh:description "Represents an Agent" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; 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 schema:name ], + 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 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:path schema1:description ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 0 ; - sh:path schema:identifier ], + sh:path schema1:identifier ], [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml_common:ontology_types ] ; + sh:order 3 ; + sh:path linkml_common:classification ] ; sh:targetClass linkml_common:Agent . linkml_common:PhysicalDevice a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "A unique identifier for a thing" ; + 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:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml_common:classification ], + [ 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. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml_common:type ], + [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 0 ; - sh:path schema:identifier ], + sh:path schema1:identifier ], [ 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 schema:description ], + sh:order 1 ; + sh:path schema1:name ] ; + sh:targetClass linkml_common:PhysicalDevice . + +linkml_common:Organization a sh:NodeShape ; + sh:closed true ; + sh:description "Represents an Organization" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml_common:classification ], [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; 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:description "A human-readable description for a thing" ; sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml_common:subtype ], + sh:order 5 ; + sh:path schema1:description ], [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; sh:order 4 ; @@ -2884,8 +4191,41 @@ linkml_common:PhysicalDevice a sh:NodeShape ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; sh:order 1 ; - sh:path schema:name ] ; - sh:targetClass linkml_common:PhysicalDevice . + 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:targetClass linkml_common:Organization . + + a sh:NodeShape ; + sh:closed true ; + sh:description "A quantity of money" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:float ; + sh:description "The value of the quantity" ; + sh:maxCount 1 ; + sh:order 0 ; + sh:path linkml_common:value ], + [ 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: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:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml_common:type ] ; + sh:targetClass . linkml_common:Duration a sh:NodeShape ; sh:closed true ; @@ -2898,7 +4238,7 @@ linkml_common:Duration a sh:NodeShape ; sh:order 0 ; sh:path linkml_common:has_quantity_kind ], [ sh:datatype xsd:string ; - sh:description "A type for a thing" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; sh:order 1 ; sh:path linkml_common:type ] ; @@ -2908,56 +4248,91 @@ 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:property [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 1 ; sh:path linkml_common:ends_at ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml_common:type ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 0 ; sh:path linkml_common:starts_at ] ; sh:targetClass linkml_common:TemporalInterval . -linkml_common:Concept a sh:NodeShape ; +schema1: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 name for a thing" ; - sh:maxCount 1 ; - sh:order 1 ; - sh:path schema:name ], - [ sh:class linkml_common:Concept ; + sh:property [ sh:class linkml_common:Concept ; sh:nodeKind sh:IRI ; - sh:order 4 ; + sh:order 7 ; 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:order 8 ; + sh:path schema1:description ], [ 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 4 ; + sh:path schema1:name ], + [ sh:class linkml_common:GeoBoxLocation ; + sh:description "The bounding coordinates of the place" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 2 ; - sh:path linkml_common:type ], + sh:path linkml_common:bounding_coordinates ], + [ sh:class linkml_common:Concept ; + sh:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 6 ; + sh:path linkml_common:classification ], + [ sh:class linkml_common:GeoPointLocation ; + sh:description "The geolocation of the place" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 1 ; + sh:path linkml_common:geolocation ], [ sh:datatype xsd:string ; - sh:description "An enum with a more specific type" ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml_common:subtype ], + sh:order 5 ; + sh:path linkml_common:type ], [ sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; + sh:order 3 ; + sh:path schema1:identifier ], + [ sh:class schema1:PostalAddress ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 0 ; - sh:path schema:identifier ] ; - sh:targetClass linkml_common:Concept . + sh:path linkml_common:address ] ; + sh:targetClass schema1:Place . + + a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + 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:has_quantity_kind ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml_common:type ] ; + sh:targetClass . linkml_common:TimePoint a sh:NodeShape ; sh:closed true ; @@ -2967,42 +4342,77 @@ linkml_common:TimePoint a sh:NodeShape ; sh:description "A human-readable description for a thing" ; sh:maxCount 1 ; sh:order 5 ; - sh:path schema:description ], - [ sh:datatype xsd:date ; + sh:path schema1:description ], + [ sh:datatype xsd:string ; + sh:description "A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; sh:maxCount 1 ; - sh:order 1 ; - sh:path linkml_common:date_value ], + sh:order 8 ; + sh:path linkml_common:type ], + [ sh:datatype xsd:dateTime ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml_common:datetime_value ], [ sh:class linkml_common:Event ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 4 ; sh:path linkml_common:marker_event ], - [ sh:datatype xsd:time ; - sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml_common:time_value ], - [ sh:datatype xsd:dateTime ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml_common:datetime_value ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 7 ; sh:path linkml_common:ends_at ], [ sh:datatype xsd:integer ; sh:maxCount 1 ; sh:order 0 ; sh:path linkml_common:year_value ], + [ sh:datatype xsd:date ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml_common:date_value ], + [ sh:datatype xsd:time ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml_common:time_value ], [ sh:class linkml_common:TimePoint ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 6 ; - sh:path linkml_common:starts_at ], + sh:path linkml_common:starts_at ] ; + 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. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`." ; + 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 type for a thing" ; + sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; - sh:order 8 ; - sh:path linkml_common:type ] ; - sh:targetClass linkml_common:TimePoint . + 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: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:description "A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml_common:classification ] ; + sh:targetClass linkml_common:Concept . diff --git a/project/shex/linkml_common.shex b/project/shex/linkml_common.shex index c204475..ac40c3d 100644 --- a/project/shex/linkml_common.shex +++ b/project/shex/linkml_common.shex @@ -1,10 +1,10 @@ BASE +PREFIX dcterms: PREFIX rdf: PREFIX xsd: PREFIX linkml: -PREFIX schema: +PREFIX schema1: PREFIX fhir: -PREFIX dcterms: linkml:String xsd:string @@ -77,6 +77,36 @@ linkml:Sparqlpath xsd:string ) } + ( + CLOSED { + ( $ ( & ; + rdf:type [ ] ? + ) ; + rdf:type [ ] + ) + } OR @ +) + + ( + CLOSED { + ( $ ( & ; + rdf:type [ ] ? + ) ; + rdf:type [ ] + ) + } OR @ OR @ +) + + ( + CLOSED { + ( $ ( & ; + rdf:type [ ] ? + ) ; + rdf:type [ ] + ) + } OR @ +) + CLOSED { ( $ ( & ; rdf:type [ ] ? ; @@ -106,7 +136,7 @@ linkml:Sparqlpath xsd:string CLOSED { ( $ ( & ; - rdf:type [ schema:Intangible ] ? ; + rdf:type [ schema1:Intangible ] ? ; @ * ) ; rdf:type [ ] ? @@ -128,7 +158,8 @@ linkml:Sparqlpath xsd:string ) ; rdf:type [ ] ) - } OR @ OR @ OR @ + } OR @ OR @ OR @ OR @ OR @ OR + @ OR @ OR @ ) ( @@ -140,14 +171,22 @@ linkml:Sparqlpath xsd:string @linkml:String ? ; dcterms:creator @ * ; dcterms:contributor @ * ; - schema:contactPoint @ * ; - schema:keywords @linkml:String * + schema1:contactPoint @ * ; + schema1:keywords @linkml:String * ) ; rdf:type [ ] ) } OR @ OR @ ) + CLOSED { + ( $ ( & ; + rdf:type [ ] ? + ) ; + rdf:type [ ] + ) +} + CLOSED { ( $ ( & ; rdf:type [ ] ? @@ -167,7 +206,7 @@ linkml:Sparqlpath xsd:string CLOSED { ( $ ( & ; - rdf:type [ schema:Intangible ] ? + rdf:type [ schema1:Intangible ] ? ) ; rdf:type [ ] ? ) @@ -181,6 +220,15 @@ linkml:Sparqlpath xsd:string ) } + CLOSED { + ( $ ( & ; + rdf:type [ ] ? ; + @ * + ) ; + rdf:type [ ] + ) +} + CLOSED { ( $ ( & ; rdf:type [ ] ? @@ -213,7 +261,7 @@ linkml:Sparqlpath xsd:string { ( $ @linkml:String ? ; - rdf:type [ schema:Thing ] ? + rdf:type [ schema1:Thing ] ? ) } @@ -235,12 +283,22 @@ linkml:Sparqlpath xsd:string CLOSED { ( $ ( & ; - rdf:type [ schema:Place ] ? + rdf:type [ schema1:Place ] ? ) ; rdf:type [ ] ) } + ( + CLOSED { + ( $ ( & ; + rdf:type [ ] ? + ) ; + rdf:type [ ] + ) + } OR @ +) + ( CLOSED { ( $ ( & ; @@ -257,6 +315,90 @@ linkml:Sparqlpath xsd:string @ OR @ ) + CLOSED { + ( $ ( & ; + rdf:type [ ] ? + ) ; + rdf:type [ ] + ) +} + + ( + CLOSED { + ( $ ( & ; + rdf:type [ ] ? ; + [ + + ] ? ; + @ ? ; + @ * ; + @ ? ; + @ ? ; + @ ? + ) ; + rdf:type [ ] + ) + } OR @ OR @ OR @ +) + + CLOSED { + ( $ ( & ; + rdf:type [ ] ? ; + [ + + + + + + + ] ? ; + @ ? ; + @ ? + ) ; + rdf:type [ ] + ) +} + + CLOSED { + ( $ ( & ; + rdf:type [ ] ? + ) ; + rdf:type [ ] + ) +} + + ( + CLOSED { + ( $ ( & ; + rdf:type [ ] ? ; + @ ? + ) ; + rdf:type [ ] + ) + } OR @ OR @ +) + + CLOSED { + ( $ ( & ; + rdf:type [ ] ? ; + @linkml:String ? ; + @ ? ; + @ ? + ) ; + rdf:type [ ] ? + ) +} + + ( + CLOSED { + ( $ ( & ; + rdf:type [ ] ? + ) ; + rdf:type [ ] ? + ) + } OR @ +) + CLOSED { ( $ ( & ; rdf:type [ fhir:Quantity ] ? @@ -293,6 +435,35 @@ linkml:Sparqlpath xsd:string } OR @ OR @ ) + CLOSED { + ( $ ( & ; + rdf:type [ ] ? + ) ; + rdf:type [ ] + ) +} + + CLOSED { + ( $ ( & ; + rdf:type [ ] ? ; + @ ? + ) ; + rdf:type [ ] + ) +} + + CLOSED { + ( $ ( & ; + rdf:type [ ] ? ; + @linkml:Decimal ? ; + @linkml:Decimal ? ; + @linkml:Decimal ? ; + @linkml:Decimal ? + ) ; + rdf:type [ ] ? + ) +} + CLOSED { ( $ ( & ; rdf:type [ ] ? ; @@ -319,7 +490,7 @@ linkml:Sparqlpath xsd:string rdf:type [ ] ? ; @ ? ; @ ? ; - [ + [ @@ -356,7 +527,7 @@ linkml:Sparqlpath xsd:string ( CLOSED { ( $ ( & ; - rdf:type [ schema:Role ] ? ; + rdf:type [ schema1:Role ] ? ; @ ? ) ; rdf:type [ ] ? @@ -366,16 +537,25 @@ linkml:Sparqlpath xsd:string CLOSED { ( $ ( & ; - rdf:type [ schema:Place ] ? + rdf:type [ schema1:Place ] ? ) ; rdf:type [ ] ) } + CLOSED { + ( $ ( & ; + rdf:type [ ] ? ; + @ ? + ) ; + rdf:type [ ] + ) +} + CLOSED { ( $ ( & ; rdf:type [ ] ? ; - schema:describes @ ? + schema1:describes @ ? ) ; rdf:type [ ] ) @@ -384,9 +564,9 @@ linkml:Sparqlpath xsd:string ( CLOSED { ( $ ( & ; - rdf:type [ schema:Thing ] ? + rdf:type [ schema1:Thing ] ? ) ; - rdf:type [ schema:Intangible ] ? + rdf:type [ schema1:Intangible ] ? ) } OR @ OR @ OR @ OR @ OR @ OR @ OR @ OR @ @@ -416,7 +596,9 @@ linkml:Sparqlpath xsd:string CLOSED { ( $ ( & ; - rdf:type [ ] ? + rdf:type [ ] ? ; + @linkml:Uri ? ; + @ ? ) ; rdf:type [ ] ) @@ -424,8 +606,8 @@ linkml:Sparqlpath xsd:string CLOSED { ( $ ( & ; - rdf:type [ schema:Place ] ? ; - @ + rdf:type [ schema1:Place ] ? ; + @ ? ) ; rdf:type [ ] ) @@ -440,13 +622,15 @@ linkml:Sparqlpath xsd:string } ( - { - ( $ rdf:type . * ; - rdf:type [ ] ? - ) - } OR @ + @ OR @ ) + { + ( $ rdf:type . * ; + rdf:type [ ] ? + ) +} + CLOSED { ( $ ( & ; rdf:type [ ] ? @@ -487,26 +671,57 @@ linkml:Sparqlpath xsd:string ) } + CLOSED { + ( $ ( & ; + rdf:type [ ] ? ; + [ + + ] ? ; + @ ? ; + @ ? + ) ; + rdf:type [ ] + ) +} + + CLOSED { + ( $ ( & ; + rdf:type [ fhir:SimpleQuantity ] ? ; + @linkml:Float ? ; + @ ? + ) ; + rdf:type [ fhir:MoneyQuantity ] ? + ) +} + ( CLOSED { ( $ ( & ; - rdf:type [ schema:Thing ] ? ; - schema:name @linkml:String ? ; - @linkml:String ? ; + rdf:type [ schema1:Thing ] ? ; + schema1:name @linkml:String ? ; + @ ? ; @ * ; - schema:description @linkml:String ? + schema1:description @linkml:String ? ) ; rdf:type [ ] ) - } OR @ OR @ OR @ OR @ OR @ OR @ OR - @ OR @ OR @ OR @ OR @ OR @ OR - @ + } OR @ OR @ OR @ OR @ OR @ OR + @ OR @ OR @ OR @ OR @ OR @ OR @ OR + @ OR @ OR @ ) + CLOSED { + ( $ ( & ; + rdf:type [ ] ? + ) ; + rdf:type [ ] + ) +} + ( CLOSED { ( $ ( & ; - rdf:type [ schema:Thing ] ? + rdf:type [ schema1:Thing ] ? ) ; rdf:type [ ] ? ) @@ -534,8 +749,8 @@ linkml:Sparqlpath xsd:string CLOSED { ( $ ( & ; rdf:type [ ] ? ; - schema:email @linkml:String ? ; - schema:birthDate @linkml:Date ? ; + schema1:email @linkml:String ? ; + schema1:birthDate @linkml:Date ? ; @linkml:Integer ? ; [ ] ? @@ -557,9 +772,10 @@ linkml:Sparqlpath xsd:string ( $ ( & ; rdf:type [ ] ? ;
@ ? ; - @ ? + @ ? ; + @ ? ) ; - rdf:type [ schema:Place ] + rdf:type [ schema1:Place ] ) } OR @ OR @ OR @ ) @@ -588,7 +804,7 @@ linkml:Sparqlpath xsd:string CLOSED { ( $ ( & ; - rdf:type [ schema:Thing ] ? ; + rdf:type [ schema1:Thing ] ? ; @linkml:String ? ; @linkml:String ? ; @linkml:String ? ; @@ -596,7 +812,33 @@ linkml:Sparqlpath xsd:string @linkml:String ? ; @linkml:String ? ) ; - rdf:type [ schema:PostalAddress ] ? + rdf:type [ schema1:PostalAddress ] ? + ) +} + + ( + CLOSED { + ( $ ( & ; + rdf:type [ ] ? ; + @ ? ; + @ ? ; + @ ? ; + @ ? ; + @linkml:Date ? ; + @linkml:Date ? ; + @ ? ; + @ ? + ) ; + rdf:type [ ] + ) + } OR @ OR @ OR @ +) + + CLOSED { + ( $ ( & ; + rdf:type [ ] ? + ) ; + rdf:type [ ] ) } @@ -621,7 +863,7 @@ linkml:Sparqlpath xsd:string ( CLOSED { ( $ ( & ; - rdf:type [ schema:Intangible ] ? ; + rdf:type [ schema1:Intangible ] ? ; @ ? ) ; rdf:type [ fhir:Quantity ] ? @@ -639,7 +881,7 @@ linkml:Sparqlpath xsd:string CLOSED { ( $ ( & ; - rdf:type [ schema:Intangible ] ? ; + rdf:type [ schema1:Intangible ] ? ; @ ? ; @ ? ) ; @@ -647,6 +889,14 @@ linkml:Sparqlpath xsd:string ) } + CLOSED { + ( $ ( & ; + rdf:type [ ] ? + ) ; + rdf:type [ ] + ) +} + CLOSED { ( $ ( & ; rdf:type [ fhir:Quantity ] ? ; @@ -668,19 +918,29 @@ linkml:Sparqlpath xsd:string ( { ( $ ( & ; - rdf:type [ schema:Intangible ] ? + rdf:type [ schema1:Intangible ] ? ) ; rdf:type [ ] ? ) } OR @ ) + ( + CLOSED { + ( $ ( & ; + rdf:type [ ] ? + ) ; + rdf:type [ ] + ) + } OR @ OR @ OR @ +) + ( { ( $ ( & ; - rdf:type [ schema:Intangible ] ? + rdf:type [ schema1:Intangible ] ? ) ; - rdf:type [ schema:Role ] ? + rdf:type [ schema1:Role ] ? ) } OR @ ) @@ -711,21 +971,33 @@ linkml:Sparqlpath xsd:string ) } - CLOSED { - ( $ ( & ; - rdf:type [ schema:Intangible ] ? - ) ; - rdf:type [ ] ? - ) -} + ( + CLOSED { + ( $ ( & ; + rdf:type [ schema1:Intangible ] ? + ) ; + rdf:type [ ] ? + ) + } OR @ +) - CLOSED { - ( $ ( & ; - rdf:type [ fhir:Quantity ] ? ; - @linkml:Float ? ; - @ ? + ( + CLOSED { + ( $ ( & ; + rdf:type [ fhir:Quantity ] ? ; + @linkml:Float ? ; + @ ? + ) ; + rdf:type [ fhir:SimpleQuantity ] ? + ) + } OR @ +) + + CLOSED { + ( $ ( & ; + rdf:type [ ] ? ) ; - rdf:type [ fhir:SimpleQuantity ] ? + rdf:type [ ] ) } @@ -741,7 +1013,8 @@ linkml:Sparqlpath xsd:string CLOSED { ( $ ( & ; - rdf:type [ ] ? + rdf:type [ ] ? ; + @ ? ) ; rdf:type [ ] ) @@ -775,7 +1048,7 @@ linkml:Sparqlpath xsd:string @linkml:Time ? ; @linkml:Datetime ? ; @ ? ; - schema:description @linkml:String ? + schema1:description @linkml:String ? ) ; rdf:type [ ] ? ) @@ -784,7 +1057,7 @@ linkml:Sparqlpath xsd:string ( CLOSED { ( $ ( & ; - rdf:type [ schema:Intangible ] ? ; + rdf:type [ schema1:Intangible ] ? ; @ ? ; @ ? ) ; @@ -813,11 +1086,30 @@ linkml:Sparqlpath xsd:string CLOSED { ( $ ( & ; - rdf:type [ schema:Thing ] ? ; + rdf:type [ schema1:Thing ] ? ; @ * ) ; rdf:type [ ] ? ) } + CLOSED { + ( $ ( & ; + rdf:type [ ] ? ; + [ + ] ? ; + @ ? + ) ; + rdf:type [ ] + ) +} + + CLOSED { + ( $ ( & ; + rdf:type [ ] ? + ) ; + rdf:type [ ] + ) +} + diff --git a/project/sqlschema/linkml_common.sql b/project/sqlschema/linkml_common.sql index 0d8cc97..58b0187 100644 --- a/project/sqlschema/linkml_common.sql +++ b/project/sqlschema/linkml_common.sql @@ -1,845 +1,3089 @@ +-- # Class: "Entity" Description: "A physical, digital, conceptual, or other kind of thing with some common characteristics" +-- * Slot: id Description: +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: Collection_id Description: Autocreated FK slot +-- # Class: "NamedThing" Description: "" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "Concept" Description: "" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "InformationEntity" Description: "An entity that describes some information" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: describes_id Description: The thing that is being described +-- # Class: "PhysicalDevice" Description: "" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "Intangible" Description: "An entity that is not a physical object, process, or information" +-- * Slot: id Description: +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- # Class: "Role" Description: "" +-- * Slot: id Description: +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- # Class: "Relationship" Description: "" +-- * Slot: id Description: +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- # Class: "Location" Description: "" +-- * Slot: id Description: +-- # Class: "PointLocation" Description: "" +-- * Slot: id Description: +-- # Class: "Observation" Description: "A statement about the state of something" +-- * Slot: id Description: +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- # Class: "Specification" Description: "A specification of a thing" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "Procedure" Description: "A canonical series of actions conducted in a certain order or manner" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "MathematicalOperation" Description: "Application of a mathematical operation to one or more inputs to produce one or more outputs" +-- * Slot: id Description: +-- # Class: "Collection" Description: "A group of things. The collection may be heterogeneous or homogeneous." +-- * Slot: id Description: +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- # Class: "Any" Description: "" +-- * Slot: id Description: +-- # Class: "Publication" Description: "" +-- * Slot: title Description: The title of the item +-- * Slot: abstract Description: A summary of the item +-- * Slot: rights Description: Information about rights held in and over the item +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "Agent" Description: "Represents an Agent" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "Person" Description: "Represents a Person" +-- * Slot: primary_email Description: The main email address of a person +-- * Slot: birth_date Description: Date on which a person is born +-- * Slot: age_in_years Description: Number of years since birth +-- * Slot: vital_status Description: living or dead status +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "Organization" Description: "Represents an Organization" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "AutomatedAgent" Description: "Represents an Automated Agent" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "LifeEvent" Description: "" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: starts_at_id Description: +-- * Slot: ends_at_id Description: +-- * Slot: happens_at_id Description: +-- * Slot: has_interval_id Description: +-- * Slot: has_duration_id Description: +-- # Class: "CreativeWork" Description: "The most generic kind of creative work, including books, movies, photographs, software programs, etc." +-- * Slot: title Description: The title of the item +-- * Slot: abstract Description: A summary of the item +-- * Slot: rights Description: Information about rights held in and over the item +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "Service" Description: "A service provided by an organization" +-- * Slot: id Description: +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- # Class: "Investigation" Description: "" +-- * Slot: objectives Description: +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "InvestigativeProtocol" Description: "" +-- * Slot: protocols_io_url Description: +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "StudyDesign" Description: "" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "SampleMaterial" Description: "" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "InvestigativeProcess" Description: "" +-- * Slot: follows_procedure Description: +-- * Slot: part_of Description: +-- * Slot: uses_physical_device Description: +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: starts_at_id Description: +-- * Slot: ends_at_id Description: +-- * Slot: happens_at_id Description: +-- * Slot: has_interval_id Description: +-- * Slot: has_duration_id Description: +-- # Class: "SampleCollectionProcess" Description: "" +-- * Slot: material_collected Description: +-- * Slot: collected_from Description: +-- * Slot: follows_procedure Description: +-- * Slot: part_of Description: +-- * Slot: uses_physical_device Description: +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: starts_at_id Description: +-- * Slot: ends_at_id Description: +-- * Slot: happens_at_id Description: +-- * Slot: has_interval_id Description: +-- * Slot: has_duration_id Description: +-- # Class: "SampleProcessing" Description: "" +-- * Slot: follows_procedure Description: +-- * Slot: uses_physical_device Description: +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: starts_at_id Description: +-- * Slot: ends_at_id Description: +-- * Slot: happens_at_id Description: +-- * Slot: has_interval_id Description: +-- * Slot: has_duration_id Description: +-- # Class: "DataGenerationFromSample" Description: "" +-- * Slot: follows_procedure Description: +-- * Slot: part_of Description: +-- * Slot: uses_physical_device Description: +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: starts_at_id Description: +-- * Slot: ends_at_id Description: +-- * Slot: happens_at_id Description: +-- * Slot: has_interval_id Description: +-- * Slot: has_duration_id Description: +-- # Class: "Dataset" Description: "" +-- * Slot: title Description: The title of the item +-- * Slot: abstract Description: A summary of the item +-- * Slot: rights Description: Information about rights held in and over the item +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "BuiltEnvironmentFeature" Description: "" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "Facility" Description: "" +-- * Slot: located_at_place Description: The place where the entity is located +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "Building" Description: "" +-- * Slot: located_at_place Description: The place where the entity is located +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "BuiltSystem" Description: "" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "HealthcareSite" Description: "" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: address_id Description: +-- * Slot: geolocation_id Description: The geolocation of the place +-- * Slot: bounding_coordinates_id Description: The bounding coordinates of the place +-- # Class: "HealthcareEncounter" Description: "An interaction between a patient and one or more healthcare providers" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: patient_id Description: +-- * Slot: provider_id Description: +-- * Slot: starts_at_id Description: +-- * Slot: ends_at_id Description: +-- * Slot: happens_at_id Description: +-- * Slot: has_interval_id Description: +-- * Slot: has_duration_id Description: +-- # Class: "HealthcareOrganization" Description: "An organization that provides healthcare services" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "HealthcareRole" Description: "" +-- * Slot: id Description: +-- * Slot: is_person Description: +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- # Class: "HealthcareProvider" Description: "" +-- * Slot: id Description: +-- * Slot: speciality Description: +-- * Slot: care_site Description: +-- * Slot: is_person Description: +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- # Class: "HealthcareConditionOccurrence" Description: "" +-- * Slot: observed_during Description: +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: patient_id Description: +-- * Slot: starts_at_id Description: +-- * Slot: ends_at_id Description: +-- * Slot: happens_at_id Description: +-- * Slot: has_interval_id Description: +-- * Slot: has_duration_id Description: +-- # Class: "Patient" Description: "" +-- * Slot: id Description: +-- * Slot: is_person Description: +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- # Class: "ClinicalCohort" Description: "A group of patients who share a common set of characteristics" +-- * Slot: definition Description: +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "ClinicalCohortDefinition" Description: "A definition of a clinical cohort" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "ClinicalCohortEnrollment" Description: "An event relating a patient to a clinical cohort" +-- * Slot: cohort Description: +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: patient_id Description: +-- * Slot: starts_at_id Description: +-- * Slot: ends_at_id Description: +-- * Slot: happens_at_id Description: +-- * Slot: has_interval_id Description: +-- * Slot: has_duration_id Description: +-- # Class: "DataStructure" Description: "" +-- * Slot: id Description: +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- # Class: "EngineeringSpecification" Description: "" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "RawMaterial" Description: "" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "EngineeringProcess" Description: "" +-- * Slot: follows_procedure Description: +-- * Slot: part_of Description: +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: starts_at_id Description: +-- * Slot: ends_at_id Description: +-- * Slot: happens_at_id Description: +-- * Slot: has_interval_id Description: +-- * Slot: has_duration_id Description: +-- # Class: "EngineeringMaterialProcessing" Description: "" +-- * Slot: follows_procedure Description: +-- * Slot: uses_physical_device Description: +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: starts_at_id Description: +-- * Slot: ends_at_id Description: +-- * Slot: happens_at_id Description: +-- * Slot: has_interval_id Description: +-- * Slot: has_duration_id Description: +-- # Class: "Equipment" Description: "" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "Place" Description: "Entities that have a somewhat fixed, physical extension." +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: address_id Description: +-- * Slot: geolocation_id Description: The geolocation of the place +-- * Slot: bounding_coordinates_id Description: The bounding coordinates of the place +-- # Class: "Landform" Description: "A natural feature of the solid surface of the Earth or other planetary body" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: address_id Description: +-- * Slot: geolocation_id Description: The geolocation of the place +-- * Slot: bounding_coordinates_id Description: The bounding coordinates of the place +-- # Class: "PostalAddress" Description: "Represents an Address" +-- * Slot: id Description: +-- * Slot: street_address Description: The street address +-- * Slot: street_address_additional Description: +-- * Slot: city Description: The city +-- * Slot: state Description: The state +-- * Slot: postal_code Description: The postal code or zip code +-- * Slot: country Description: The country +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- # Class: "GeoPointLocation" Description: "" +-- * Slot: id Description: +-- * Slot: latitude Description: The latitude of the location +-- * Slot: longitude Description: The longitude of the location +-- * Slot: altitude Description: The altitude of the location +-- # Class: "GeoBoxLocation" Description: "" +-- * Slot: id Description: +-- * Slot: west_bounding_coordinate Description: The westernmost coordinate of the location +-- * Slot: east_bounding_coordinate Description: The easternmost coordinate of the location +-- * Slot: north_bounding_coordinate Description: The northernmost coordinate of the location +-- * Slot: south_bounding_coordinate Description: The southernmost coordinate of the location +-- # Class: "QuantityKind" Description: "" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "Quantity" Description: "" +-- * Slot: id Description: +-- * Slot: has_quantity_kind Description: The kind of quantity +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- # Class: "SimpleQuantity" Description: "A quantity is a property that can be measured or counted" +-- * Slot: id Description: +-- * Slot: value Description: The value of the quantity +-- * Slot: unit Description: +-- * Slot: has_quantity_kind Description: The kind of quantity +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- # Class: "Ratio" Description: "A tuple of two quantities" +-- * Slot: id Description: +-- * Slot: has_quantity_kind Description: The kind of quantity +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: numerator_id Description: The numerator of the ratio +-- * Slot: denominator_id Description: The denominator of the ratio +-- # Class: "QuantityRange" Description: "A quantity range is a property that can be measured or counted" +-- * Slot: id Description: +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: lower_bound_id Description: The lower bound of the range +-- * Slot: upper_bound_id Description: The upper bound of the range +-- # Class: "UnitConversionOperation" Description: "A unit conversion operation" +-- * Slot: id Description: +-- # Class: "UnitConcept" Description: "" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "MoneyQuantity" Description: "A quantity of money" +-- * Slot: id Description: +-- * Slot: value Description: The value of the quantity +-- * Slot: unit Description: The currency of the quantity +-- * Slot: has_quantity_kind Description: The kind of quantity +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- # Class: "CurrencyConcept" Description: "A currency" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "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." +-- * Slot: id Description: +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- # Class: "FinancialAccount" Description: "A bank account" +-- * Slot: id Description: +-- * Slot: account_number Description: The account number +-- * Slot: bank Description: The bank that holds the account +-- * Slot: account_holder Description: The person or organization that holds the account +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- # Class: "PowerPlant" Description: "A facility for generating electrical power" +-- * Slot: plant_type Description: +-- * Slot: location Description: +-- * Slot: operator Description: +-- * Slot: commissioning_date Description: +-- * Slot: decommissioning_date Description: +-- * Slot: located_at_place Description: The place where the entity is located +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: capacity_id Description: +-- * Slot: capex_id Description: Capital expenditure for the plant +-- * Slot: opex_id Description: Operating expense for the plant +-- # Class: "PowerPlantType" Description: "The type of power plant" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "FossilFuelPlant" Description: "A power plant that uses fossil fuels" +-- * Slot: fuel Description: +-- * Slot: plant_type Description: +-- * Slot: location Description: +-- * Slot: operator Description: +-- * Slot: commissioning_date Description: +-- * Slot: decommissioning_date Description: +-- * Slot: located_at_place Description: The place where the entity is located +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: capacity_id Description: +-- * Slot: capex_id Description: Capital expenditure for the plant +-- * Slot: opex_id Description: Operating expense for the plant +-- # Class: "NuclearPlant" Description: "A nuclear power plant" +-- * Slot: plant_type Description: +-- * Slot: location Description: +-- * Slot: operator Description: +-- * Slot: commissioning_date Description: +-- * Slot: decommissioning_date Description: +-- * Slot: located_at_place Description: The place where the entity is located +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: capacity_id Description: +-- * Slot: capex_id Description: Capital expenditure for the plant +-- * Slot: opex_id Description: Operating expense for the plant +-- # Class: "RenewablePlant" Description: "A power plant that uses renewable energy sources" +-- * Slot: plant_type Description: +-- * Slot: location Description: +-- * Slot: operator Description: +-- * Slot: commissioning_date Description: +-- * Slot: decommissioning_date Description: +-- * Slot: located_at_place Description: The place where the entity is located +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: capacity_id Description: +-- * Slot: capex_id Description: Capital expenditure for the plant +-- * Slot: opex_id Description: Operating expense for the plant +-- # Class: "HydroelectricPlant" Description: "A hydroelectric power plant" +-- * Slot: dam Description: The dam used by the hydroelectric plant +-- * Slot: plant_type Description: +-- * Slot: location Description: +-- * Slot: operator Description: +-- * Slot: commissioning_date Description: +-- * Slot: decommissioning_date Description: +-- * Slot: located_at_place Description: The place where the entity is located +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: capacity_id Description: +-- * Slot: capex_id Description: Capital expenditure for the plant +-- * Slot: opex_id Description: Operating expense for the plant +-- # Class: "SolarPlant" Description: "A solar power plant" +-- * Slot: plant_type Description: +-- * Slot: location Description: +-- * Slot: operator Description: +-- * Slot: commissioning_date Description: +-- * Slot: decommissioning_date Description: +-- * Slot: located_at_place Description: The place where the entity is located +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: capacity_id Description: +-- * Slot: capex_id Description: Capital expenditure for the plant +-- * Slot: opex_id Description: Operating expense for the plant +-- # Class: "WindFarm" Description: "A wind farm" +-- * Slot: plant_type Description: +-- * Slot: location Description: +-- * Slot: operator Description: +-- * Slot: commissioning_date Description: +-- * Slot: decommissioning_date Description: +-- * Slot: located_at_place Description: The place where the entity is located +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: capacity_id Description: +-- * Slot: capex_id Description: Capital expenditure for the plant +-- * Slot: opex_id Description: Operating expense for the plant +-- # Class: "FossilFuel" Description: "A type of fossil fuel" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "ElectricalGrid" Description: "A network of electrical transmission lines" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "Measurement" Description: "" +-- * Slot: id Description: +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: quantity_measured_id Description: The quantity being measured +-- * Slot: variable_measured_id Description: The variable being measured +-- # Class: "Variable" Description: "" +-- * Slot: id Description: +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- # Class: "Event" Description: "A thing that happens" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: starts_at_id Description: +-- * Slot: ends_at_id Description: +-- * Slot: happens_at_id Description: +-- * Slot: has_interval_id Description: +-- * Slot: has_duration_id Description: +-- # Class: "TimePointOrTemporalInterval" Description: "" +-- * Slot: id Description: +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: starts_at_id Description: +-- * Slot: ends_at_id Description: +-- # Class: "TemporalInterval" Description: "A period of time" +-- * Slot: id Description: +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: starts_at_id Description: +-- * Slot: ends_at_id Description: +-- # Class: "TimePoint" Description: "A point in time. Can be fully specified, or specified in relative terms." +-- * Slot: id Description: +-- * Slot: year_value Description: +-- * Slot: date_value Description: +-- * Slot: time_value Description: +-- * Slot: datetime_value Description: +-- * Slot: marker_event Description: +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: starts_at_id Description: +-- * Slot: ends_at_id Description: +-- # Class: "Duration" Description: "A length of time" +-- * Slot: id Description: +-- * Slot: has_quantity_kind Description: The kind of quantity +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- # Class: "TemporalRelationship" Description: "A relationship to another time point" +-- * Slot: id Description: +-- * Slot: predicate Description: The relationship between the two time points +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: relative_to_id Description: +-- # Class: "PlannedProcess" Description: "A process that follows a defined procedure or plan" +-- * Slot: follows_procedure Description: +-- * Slot: uses_physical_device Description: +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: starts_at_id Description: +-- * Slot: ends_at_id Description: +-- * Slot: happens_at_id Description: +-- * Slot: has_interval_id Description: +-- * Slot: has_duration_id Description: +-- # Class: "MaterialCollection" Description: "" +-- * Slot: follows_procedure Description: +-- * Slot: uses_physical_device Description: +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: starts_at_id Description: +-- * Slot: ends_at_id Description: +-- * Slot: happens_at_id Description: +-- * Slot: has_interval_id Description: +-- * Slot: has_duration_id Description: +-- # Class: "MaterialProcessing" Description: "" +-- * Slot: follows_procedure Description: +-- * Slot: uses_physical_device Description: +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: starts_at_id Description: +-- * Slot: ends_at_id Description: +-- * Slot: happens_at_id Description: +-- * Slot: has_interval_id Description: +-- * Slot: has_duration_id Description: +-- # Class: "ExtractiveIndustryFacility" Description: "A facility where natural resources are extracted from the earth" +-- * Slot: facility_type Description: +-- * Slot: operator Description: +-- * Slot: located_at_place Description: The place where the entity is located +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: production_capacity_id Description: +-- * Slot: annual_production_id Description: +-- * Slot: reserves_id Description: +-- # Class: "MiningFacility" Description: "A facility where mineral resources are extracted from the earth" +-- * Slot: mining_method Description: +-- * Slot: facility_type Description: +-- * Slot: operator Description: +-- * Slot: located_at_place Description: The place where the entity is located +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: depth_id Description: +-- * Slot: area_id Description: +-- * Slot: production_capacity_id Description: +-- * Slot: annual_production_id Description: +-- * Slot: reserves_id Description: +-- # Class: "WellFacility" Description: "A facility where fluid resources (e.g., oil, gas, water) are extracted from the earth" +-- * Slot: well_type Description: +-- * Slot: facility_type Description: +-- * Slot: operator Description: +-- * Slot: located_at_place Description: The place where the entity is located +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: depth_id Description: +-- * Slot: production_capacity_id Description: +-- * Slot: annual_production_id Description: +-- * Slot: reserves_id Description: +-- # Class: "QuarryFacility" Description: "A facility where stone, sand, or gravel are extracted from the earth" +-- * Slot: facility_type Description: +-- * Slot: operator Description: +-- * Slot: located_at_place Description: The place where the entity is located +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: production_capacity_id Description: +-- * Slot: annual_production_id Description: +-- * Slot: reserves_id Description: +-- # Class: "ExtractiveIndustryEquipment" Description: "The equipment used in extractive industry operations" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "ExtractiveIndustryProduct" Description: "A product extracted from an extractive industry facility" +-- * Slot: product_type Description: +-- * Slot: processing_method Description: +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: ExtractiveIndustryFacility_id Description: Autocreated FK slot +-- * Slot: MiningFacility_id Description: Autocreated FK slot +-- * Slot: WellFacility_id Description: Autocreated FK slot +-- * Slot: QuarryFacility_id Description: Autocreated FK slot +-- * Slot: grade_id Description: +-- # Class: "ExtractiveIndustryWaste" Description: "Waste material generated from extractive industry operations" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "EnvironmentalSite" Description: "A location or site that is the subject of environmental monitoring" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: address_id Description: +-- * Slot: geolocation_id Description: The geolocation of the place +-- * Slot: bounding_coordinates_id Description: The bounding coordinates of the place +-- # Class: "EnvironmentalProcess" Description: "" +-- * Slot: id Description: +-- # Class: "EnvironmentalMonitoring" Description: "" +-- * Slot: id Description: +-- # Class: "FoodRecipe" Description: "" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "FoodIngredient" Description: "" +-- * Slot: id Description: +-- * Slot: has_quantity_kind Description: The kind of quantity +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- # Class: "FoodProcessing" Description: "" +-- * Slot: follows_procedure Description: +-- * Slot: uses_physical_device Description: +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- * Slot: starts_at_id Description: +-- * Slot: ends_at_id Description: +-- * Slot: happens_at_id Description: +-- * Slot: has_interval_id Description: +-- * Slot: has_duration_id Description: +-- # Class: "FoodTypeConcept" Description: "" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "BasicFoodType" Description: "" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "CompositeFoodType" Description: "" +-- * Slot: id Description: A unique identifier for a thing +-- * Slot: name Description: A human-readable name for a thing +-- * Slot: type Description: A type for a thing. The range of this should be a class within the schema. It is intended for schema-based classification. Anything beneath the shoreline of the schema should use `classification`. +-- * Slot: classification Description: A precise classification of the thing, using a concept from an ontology, controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict the range of values which this slot can take, using `values_from`, or bindings. +-- * Slot: description Description: A human-readable description for a thing +-- # Class: "NamedThing_ontology_types" Description: "" +-- * Slot: NamedThing_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "Concept_ontology_types" Description: "" +-- * Slot: Concept_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "InformationEntity_ontology_types" Description: "" +-- * Slot: InformationEntity_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "PhysicalDevice_ontology_types" Description: "" +-- * Slot: PhysicalDevice_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "Specification_ontology_types" Description: "" +-- * Slot: Specification_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "Procedure_ontology_types" Description: "" +-- * Slot: Procedure_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "MathematicalOperation_inputs" Description: "" +-- * Slot: MathematicalOperation_id Description: Autocreated FK slot +-- * Slot: inputs_id Description: The inputs to the operation +-- # Class: "MathematicalOperation_outputs" Description: "" +-- * Slot: MathematicalOperation_id Description: Autocreated FK slot +-- * Slot: outputs_id Description: The outputs of the operation +-- # Class: "MathematicalOperation_parts" Description: "" +-- * Slot: MathematicalOperation_id Description: Autocreated FK slot +-- * Slot: parts_id Description: The parts of the process +-- # Class: "MathematicalOperation_immediate_preceding_steps" Description: "" +-- * Slot: MathematicalOperation_id Description: Autocreated FK slot +-- * Slot: immediate_preceding_steps_id Description: The steps that immediately precede this step +-- # Class: "Publication_creators" Description: "" +-- * Slot: Publication_id Description: Autocreated FK slot +-- * Slot: creators_id Description: The person or organization who created the work +-- # Class: "Publication_contributors" Description: "" +-- * Slot: Publication_id Description: Autocreated FK slot +-- * Slot: contributors_id Description: A person or organization that contributed to the creation of the work +-- # Class: "Publication_contacts" Description: "" +-- * Slot: Publication_id Description: Autocreated FK slot +-- * Slot: contacts_id Description: A contact point for a person or organization +-- # Class: "Publication_keywords" Description: "" +-- * Slot: Publication_id Description: Autocreated FK slot +-- * Slot: keywords Description: Keywords or tags used to describe this item +-- # Class: "Publication_ontology_types" Description: "" +-- * Slot: Publication_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "Agent_ontology_types" Description: "" +-- * Slot: Agent_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "Person_ontology_types" Description: "" +-- * Slot: Person_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "Organization_ontology_types" Description: "" +-- * Slot: Organization_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "AutomatedAgent_ontology_types" Description: "" +-- * Slot: AutomatedAgent_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "LifeEvent_ontology_types" Description: "" +-- * Slot: LifeEvent_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "CreativeWork_creators" Description: "" +-- * Slot: CreativeWork_id Description: Autocreated FK slot +-- * Slot: creators_id Description: The person or organization who created the work +-- # Class: "CreativeWork_contributors" Description: "" +-- * Slot: CreativeWork_id Description: Autocreated FK slot +-- * Slot: contributors_id Description: A person or organization that contributed to the creation of the work +-- # Class: "CreativeWork_contacts" Description: "" +-- * Slot: CreativeWork_id Description: Autocreated FK slot +-- * Slot: contacts_id Description: A contact point for a person or organization +-- # Class: "CreativeWork_keywords" Description: "" +-- * Slot: CreativeWork_id Description: Autocreated FK slot +-- * Slot: keywords Description: Keywords or tags used to describe this item +-- # Class: "CreativeWork_ontology_types" Description: "" +-- * Slot: CreativeWork_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "Investigation_variables" Description: "" +-- * Slot: Investigation_id Description: Autocreated FK slot +-- * Slot: variables_id Description: +-- # Class: "Investigation_ontology_types" Description: "" +-- * Slot: Investigation_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "InvestigativeProtocol_ontology_types" Description: "" +-- * Slot: InvestigativeProtocol_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "StudyDesign_ontology_types" Description: "" +-- * Slot: StudyDesign_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "SampleMaterial_ontology_types" Description: "" +-- * Slot: SampleMaterial_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "InvestigativeProcess_ontology_types" Description: "" +-- * Slot: InvestigativeProcess_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "SampleCollectionProcess_ontology_types" Description: "" +-- * Slot: SampleCollectionProcess_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "SampleProcessing_ontology_types" Description: "" +-- * Slot: SampleProcessing_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "DataGenerationFromSample_ontology_types" Description: "" +-- * Slot: DataGenerationFromSample_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "Dataset_collected_as_part_of" Description: "" +-- * Slot: Dataset_id Description: Autocreated FK slot +-- * Slot: collected_as_part_of_id Description: +-- # Class: "Dataset_creators" Description: "" +-- * Slot: Dataset_id Description: Autocreated FK slot +-- * Slot: creators_id Description: The person or organization who created the work +-- # Class: "Dataset_contributors" Description: "" +-- * Slot: Dataset_id Description: Autocreated FK slot +-- * Slot: contributors_id Description: A person or organization that contributed to the creation of the work +-- # Class: "Dataset_contacts" Description: "" +-- * Slot: Dataset_id Description: Autocreated FK slot +-- * Slot: contacts_id Description: A contact point for a person or organization +-- # Class: "Dataset_keywords" Description: "" +-- * Slot: Dataset_id Description: Autocreated FK slot +-- * Slot: keywords Description: Keywords or tags used to describe this item +-- # Class: "Dataset_ontology_types" Description: "" +-- * Slot: Dataset_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "BuiltEnvironmentFeature_ontology_types" Description: "" +-- * Slot: BuiltEnvironmentFeature_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "Facility_ontology_types" Description: "" +-- * Slot: Facility_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "Building_ontology_types" Description: "" +-- * Slot: Building_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "BuiltSystem_ontology_types" Description: "" +-- * Slot: BuiltSystem_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "HealthcareSite_ontology_types" Description: "" +-- * Slot: HealthcareSite_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "HealthcareEncounter_ontology_types" Description: "" +-- * Slot: HealthcareEncounter_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "HealthcareOrganization_ontology_types" Description: "" +-- * Slot: HealthcareOrganization_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "HealthcareConditionOccurrence_ontology_types" Description: "" +-- * Slot: HealthcareConditionOccurrence_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "ClinicalCohort_ontology_types" Description: "" +-- * Slot: ClinicalCohort_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "ClinicalCohortDefinition_ontology_types" Description: "" +-- * Slot: ClinicalCohortDefinition_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "ClinicalCohortEnrollment_ontology_types" Description: "" +-- * Slot: ClinicalCohortEnrollment_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "EngineeringSpecification_ontology_types" Description: "" +-- * Slot: EngineeringSpecification_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "RawMaterial_ontology_types" Description: "" +-- * Slot: RawMaterial_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "EngineeringProcess_ontology_types" Description: "" +-- * Slot: EngineeringProcess_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "EngineeringMaterialProcessing_ontology_types" Description: "" +-- * Slot: EngineeringMaterialProcessing_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "Equipment_ontology_types" Description: "" +-- * Slot: Equipment_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "Place_ontology_types" Description: "" +-- * Slot: Place_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "Landform_ontology_types" Description: "" +-- * Slot: Landform_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "QuantityKind_ontology_types" Description: "" +-- * Slot: QuantityKind_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "UnitConversionOperation_inputs" Description: "" +-- * Slot: UnitConversionOperation_id Description: Autocreated FK slot +-- * Slot: inputs_id Description: The input unit +-- # Class: "UnitConversionOperation_outputs" Description: "" +-- * Slot: UnitConversionOperation_id Description: Autocreated FK slot +-- * Slot: outputs_id Description: The output unit +-- # Class: "UnitConversionOperation_parts" Description: "" +-- * Slot: UnitConversionOperation_id Description: Autocreated FK slot +-- * Slot: parts_id Description: The parts of the process +-- # Class: "UnitConversionOperation_immediate_preceding_steps" Description: "" +-- * Slot: UnitConversionOperation_id Description: Autocreated FK slot +-- * Slot: immediate_preceding_steps_id Description: The steps that immediately precede this step +-- # Class: "UnitConcept_ontology_types" Description: "" +-- * Slot: UnitConcept_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "CurrencyConcept_ontology_types" Description: "" +-- * Slot: CurrencyConcept_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "PowerPlant_ontology_types" Description: "" +-- * Slot: PowerPlant_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "PowerPlantType_ontology_types" Description: "" +-- * Slot: PowerPlantType_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "FossilFuelPlant_ontology_types" Description: "" +-- * Slot: FossilFuelPlant_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "NuclearPlant_ontology_types" Description: "" +-- * Slot: NuclearPlant_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "RenewablePlant_ontology_types" Description: "" +-- * Slot: RenewablePlant_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "HydroelectricPlant_ontology_types" Description: "" +-- * Slot: HydroelectricPlant_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "SolarPlant_ontology_types" Description: "" +-- * Slot: SolarPlant_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "WindFarm_ontology_types" Description: "" +-- * Slot: WindFarm_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "FossilFuel_ontology_types" Description: "" +-- * Slot: FossilFuel_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "ElectricalGrid_plants" Description: "" +-- * Slot: ElectricalGrid_id Description: Autocreated FK slot +-- * Slot: plants_id Description: +-- # Class: "ElectricalGrid_ontology_types" Description: "" +-- * Slot: ElectricalGrid_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "Variable_allowed_units" Description: "" +-- * Slot: Variable_id Description: Autocreated FK slot +-- * Slot: allowed_units_id Description: The units that are allowed for this variable +-- # Class: "Event_ontology_types" Description: "" +-- * Slot: Event_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "PlannedProcess_ontology_types" Description: "" +-- * Slot: PlannedProcess_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "MaterialCollection_ontology_types" Description: "" +-- * Slot: MaterialCollection_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "MaterialProcessing_ontology_types" Description: "" +-- * Slot: MaterialProcessing_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "ExtractiveIndustryFacility_ontology_types" Description: "" +-- * Slot: ExtractiveIndustryFacility_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "MiningFacility_ontology_types" Description: "" +-- * Slot: MiningFacility_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "WellFacility_ontology_types" Description: "" +-- * Slot: WellFacility_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "QuarryFacility_ontology_types" Description: "" +-- * Slot: QuarryFacility_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "ExtractiveIndustryEquipment_ontology_types" Description: "" +-- * Slot: ExtractiveIndustryEquipment_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "ExtractiveIndustryProduct_ontology_types" Description: "" +-- * Slot: ExtractiveIndustryProduct_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "ExtractiveIndustryWaste_ontology_types" Description: "" +-- * Slot: ExtractiveIndustryWaste_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "EnvironmentalSite_ontology_types" Description: "" +-- * Slot: EnvironmentalSite_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "FoodRecipe_ingredients" Description: "" +-- * Slot: FoodRecipe_id Description: Autocreated FK slot +-- * Slot: ingredients_id Description: +-- # Class: "FoodRecipe_steps" Description: "" +-- * Slot: FoodRecipe_id Description: Autocreated FK slot +-- * Slot: steps_id Description: +-- # Class: "FoodRecipe_ontology_types" Description: "" +-- * Slot: FoodRecipe_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "FoodProcessing_ontology_types" Description: "" +-- * Slot: FoodProcessing_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "FoodTypeConcept_ontology_types" Description: "" +-- * Slot: FoodTypeConcept_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "BasicFoodType_ontology_types" Description: "" +-- * Slot: BasicFoodType_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: +-- # Class: "CompositeFoodType_ontology_types" Description: "" +-- * Slot: CompositeFoodType_id Description: Autocreated FK slot +-- * Slot: ontology_types_id Description: - -CREATE TABLE "Agent" ( +CREATE TABLE "Concept" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) +); +CREATE TABLE "Intangible" ( + id INTEGER NOT NULL, + type TEXT, PRIMARY KEY (id) ); - -CREATE TABLE "AutomatedAgent" ( - id TEXT NOT NULL, - name TEXT, +CREATE TABLE "Role" ( + id INTEGER NOT NULL, type TEXT, - subtype TEXT, - ontology_types TEXT, - description TEXT, PRIMARY KEY (id) ); - -CREATE TABLE "BasicFoodType" ( - id TEXT NOT NULL, - name TEXT, +CREATE TABLE "Relationship" ( + id INTEGER NOT NULL, type TEXT, - subtype TEXT, - ontology_types TEXT, - description TEXT, PRIMARY KEY (id) ); - -CREATE TABLE "ClinicalCohortDefinition" ( - id TEXT NOT NULL, - name TEXT, +CREATE TABLE "Location" ( + id INTEGER NOT NULL, + PRIMARY KEY (id) +); +CREATE TABLE "PointLocation" ( + id INTEGER NOT NULL, + PRIMARY KEY (id) +); +CREATE TABLE "Observation" ( + id INTEGER NOT NULL, type TEXT, - subtype TEXT, - ontology_types TEXT, - description TEXT, PRIMARY KEY (id) ); - +CREATE TABLE "MathematicalOperation" ( + id INTEGER NOT NULL, + PRIMARY KEY (id) +); CREATE TABLE "Collection" ( + id INTEGER NOT NULL, type TEXT, - members TEXT, - PRIMARY KEY (type, members) + PRIMARY KEY (id) ); - -CREATE TABLE "CompositeFoodType" ( - id TEXT NOT NULL, - name TEXT, - type TEXT, - subtype TEXT, - ontology_types TEXT, - description TEXT, +CREATE TABLE "Any" ( + id INTEGER NOT NULL, PRIMARY KEY (id) ); - -CREATE TABLE "Concept" ( - id TEXT NOT NULL, - name TEXT, +CREATE TABLE "Service" ( + id INTEGER NOT NULL, type TEXT, - subtype TEXT, - ontology_types TEXT, - description TEXT, PRIMARY KEY (id) ); - -CREATE TABLE "CreativeWork" ( - id TEXT NOT NULL, - name TEXT, +CREATE TABLE "DataStructure" ( + id INTEGER NOT NULL, 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, +CREATE TABLE "PostalAddress" ( + id INTEGER NOT NULL, + street_address TEXT, + street_address_additional TEXT, + city TEXT, + state TEXT, + postal_code TEXT, + country 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) +CREATE TABLE "GeoPointLocation" ( + id INTEGER NOT NULL, + latitude INTEGER, + longitude INTEGER, + altitude INTEGER, + PRIMARY KEY (id) ); - -CREATE TABLE "EngineeringSpecification" ( - id TEXT NOT NULL, - name TEXT, +CREATE TABLE "GeoBoxLocation" ( + id INTEGER NOT NULL, + west_bounding_coordinate INTEGER, + east_bounding_coordinate INTEGER, + north_bounding_coordinate INTEGER, + south_bounding_coordinate INTEGER, + PRIMARY KEY (id) +); +CREATE TABLE "UnitConversionOperation" ( + id INTEGER NOT NULL, + PRIMARY KEY (id) +); +CREATE TABLE "FinancialProduct" ( + id INTEGER NOT NULL, type TEXT, - subtype TEXT, - ontology_types TEXT, - description TEXT, PRIMARY KEY (id) ); - -CREATE TABLE "EnvironmentalSite" ( - id TEXT NOT NULL, - name TEXT, +CREATE TABLE "Variable" ( + id INTEGER NOT NULL, 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, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - starts_at TEXT, - ends_at TEXT, - happens_at TEXT, - has_interval TEXT, - has_duration TEXT, - PRIMARY KEY (id) + starts_at_id INTEGER, + ends_at_id INTEGER, + happens_at_id INTEGER, + has_interval_id INTEGER, + has_duration_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(starts_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(ends_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(happens_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(has_interval_id) REFERENCES "TemporalInterval" (id), + FOREIGN KEY(has_duration_id) REFERENCES "Duration" (id) ); - -CREATE TABLE "FoodRecipe" ( - id TEXT NOT NULL, - name TEXT, +CREATE TABLE "TemporalInterval" ( + id INTEGER NOT NULL, type TEXT, - subtype TEXT, - ontology_types TEXT, + starts_at_id INTEGER, + ends_at_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(starts_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(ends_at_id) REFERENCES "TimePoint" (id) +); +CREATE TABLE "TimePoint" ( + id INTEGER NOT NULL, + year_value INTEGER, + date_value DATE, + time_value TIME, + datetime_value DATETIME, + marker_event TEXT, description TEXT, + type TEXT, + starts_at_id INTEGER, + ends_at_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(marker_event) REFERENCES "Event" (id), + FOREIGN KEY(starts_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(ends_at_id) REFERENCES "TimePoint" (id) +); +CREATE TABLE "EnvironmentalProcess" ( + id INTEGER NOT NULL, PRIMARY KEY (id) ); - -CREATE TABLE "FoodTypeConcept" ( - id TEXT NOT NULL, - name TEXT, - type TEXT, - subtype TEXT, - ontology_types TEXT, - description TEXT, +CREATE TABLE "EnvironmentalMonitoring" ( + id INTEGER NOT NULL, PRIMARY KEY (id) ); - -CREATE TABLE "GeoPointLocation" ( - latitude TEXT, - longitude TEXT, - altitude TEXT, - PRIMARY KEY (latitude, longitude, altitude) +CREATE TABLE "Entity" ( + id INTEGER NOT NULL, + type TEXT, + "Collection_id" INTEGER, + PRIMARY KEY (id), + FOREIGN KEY("Collection_id") REFERENCES "Collection" (id) ); - -CREATE TABLE "HealthcareEncounter" ( +CREATE TABLE "NamedThing" ( id TEXT NOT NULL, name TEXT, type TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - starts_at TEXT, - ends_at TEXT, - happens_at TEXT, - has_interval TEXT, - has_duration TEXT, - patient TEXT, - provider TEXT, - subtype VARCHAR(34), - PRIMARY KEY (id) + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "HealthcareOrganization" ( +CREATE TABLE "InformationEntity" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - PRIMARY KEY (id) + describes_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(describes_id) REFERENCES "Any" (id) ); - -CREATE TABLE "HealthcareSite" ( +CREATE TABLE "PhysicalDevice" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - address TEXT, - geolocation TEXT, - PRIMARY KEY (id) + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "InformationEntity" ( +CREATE TABLE "Specification" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - describes TEXT, - PRIMARY KEY (id) -); - -CREATE TABLE "Intangible" ( - type TEXT, - PRIMARY KEY (type) + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "Investigation" ( +CREATE TABLE "Procedure" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - objectives TEXT, - variables TEXT, - PRIMARY KEY (id) + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "InvestigativeProtocol" ( +CREATE TABLE "Publication" ( + title TEXT, + abstract TEXT, + rights TEXT, id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - PRIMARY KEY (id) + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "Landform" ( +CREATE TABLE "Agent" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - address TEXT, - geolocation TEXT NOT NULL, - PRIMARY KEY (id) + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "LifeEvent" ( +CREATE TABLE "Person" ( + primary_email TEXT, + birth_date DATE, + age_in_years INTEGER, + vital_status VARCHAR(7), id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - starts_at TEXT, - ends_at TEXT, - happens_at TEXT, - has_interval TEXT, - has_duration TEXT, - PRIMARY KEY (id) -); - -CREATE TABLE "MathematicalOperation" ( - inputs TEXT, - outputs TEXT, - parts TEXT, - immediate_preceding_steps TEXT, - PRIMARY KEY (inputs, outputs, parts, immediate_preceding_steps) -); - -CREATE TABLE "Measurement" ( - type TEXT, - quantity_measured TEXT, - variable_measured TEXT, - PRIMARY KEY (type, quantity_measured, variable_measured) + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "NamedThing" ( +CREATE TABLE "Organization" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - PRIMARY KEY (id) -); - -CREATE TABLE "Observation" ( - type TEXT, - PRIMARY KEY (type) + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "Organization" ( +CREATE TABLE "AutomatedAgent" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - PRIMARY KEY (id) + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "Person" ( +CREATE TABLE "CreativeWork" ( + title TEXT, + abstract TEXT, + rights TEXT, id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - primary_email TEXT, - birth_date DATE, - age_in_years INTEGER, - vital_status VARCHAR(7), - PRIMARY KEY (id) + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "PhysicalDevice" ( +CREATE TABLE "Investigation" ( + objectives TEXT, id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - PRIMARY KEY (id) + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "Place" ( +CREATE TABLE "InvestigativeProtocol" ( + protocols_io_url TEXT, id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - address TEXT, - geolocation TEXT, - PRIMARY KEY (id) -); - -CREATE TABLE "PostalAddress" ( - type TEXT, - street_address TEXT, - street_address_additional TEXT, - city TEXT, - state TEXT, - postal_code TEXT, - country TEXT, - PRIMARY KEY (type, street_address, street_address_additional, city, state, postal_code, country) + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "Procedure" ( +CREATE TABLE "StudyDesign" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - PRIMARY KEY (id) + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "Publication" ( +CREATE TABLE "SampleMaterial" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) +); +CREATE TABLE "Dataset" ( title TEXT, abstract TEXT, rights TEXT, - creators TEXT, - contributors TEXT, - contacts TEXT, - PRIMARY KEY (id) -); - -CREATE TABLE "QuantityKind" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - PRIMARY KEY (id) + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "QuantityRange" ( +CREATE TABLE "BuiltEnvironmentFeature" ( + id TEXT NOT NULL, + name TEXT, type TEXT, - lower_bound TEXT, - upper_bound TEXT, - PRIMARY KEY (type, lower_bound, upper_bound) + classification TEXT, + description TEXT, + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "RawMaterial" ( +CREATE TABLE "BuiltSystem" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - PRIMARY KEY (id) + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "SampleMaterial" ( +CREATE TABLE "HealthcareSite" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - PRIMARY KEY (id) + address_id INTEGER, + geolocation_id INTEGER, + bounding_coordinates_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(address_id) REFERENCES "PostalAddress" (id), + FOREIGN KEY(geolocation_id) REFERENCES "GeoPointLocation" (id), + FOREIGN KEY(bounding_coordinates_id) REFERENCES "GeoBoxLocation" (id) ); - -CREATE TABLE "Service" ( +CREATE TABLE "HealthcareOrganization" ( + id TEXT NOT NULL, + name TEXT, type TEXT, - PRIMARY KEY (type) + classification TEXT, + description TEXT, + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "Specification" ( +CREATE TABLE "ClinicalCohortDefinition" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - PRIMARY KEY (id) + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "StudyDesign" ( +CREATE TABLE "EngineeringSpecification" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - PRIMARY KEY (id) + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "TemporalInterval" ( +CREATE TABLE "RawMaterial" ( + id TEXT NOT NULL, + name TEXT, type TEXT, - starts_at TEXT, - ends_at TEXT, - PRIMARY KEY (type, starts_at, ends_at) + classification TEXT, + description TEXT, + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "TemporalRelationship" ( +CREATE TABLE "Equipment" ( + id TEXT NOT NULL, + name TEXT, type TEXT, - predicate VARCHAR(15), - relative_to TEXT, - PRIMARY KEY (type, predicate, relative_to) + classification TEXT, + description TEXT, + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "TimePointOrTemporalInterval" ( +CREATE TABLE "Place" ( + id TEXT NOT NULL, + name TEXT, type TEXT, - starts_at TEXT, - ends_at TEXT, - PRIMARY KEY (type, starts_at, ends_at) + classification TEXT, + description TEXT, + address_id INTEGER, + geolocation_id INTEGER, + bounding_coordinates_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(address_id) REFERENCES "PostalAddress" (id), + FOREIGN KEY(geolocation_id) REFERENCES "GeoPointLocation" (id), + FOREIGN KEY(bounding_coordinates_id) REFERENCES "GeoBoxLocation" (id) ); - -CREATE TABLE "UnitConcept" ( +CREATE TABLE "Landform" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - PRIMARY KEY (id) -); - -CREATE TABLE "UnitConversionOperation" ( - parts TEXT, - immediate_preceding_steps TEXT, - inputs TEXT, - outputs TEXT, - PRIMARY KEY (parts, immediate_preceding_steps, inputs, outputs) + address_id INTEGER, + geolocation_id INTEGER, + bounding_coordinates_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(address_id) REFERENCES "PostalAddress" (id), + FOREIGN KEY(geolocation_id) REFERENCES "GeoPointLocation" (id), + FOREIGN KEY(bounding_coordinates_id) REFERENCES "GeoBoxLocation" (id) ); - -CREATE TABLE "Variable" ( +CREATE TABLE "QuantityKind" ( + id TEXT NOT NULL, + name TEXT, type TEXT, - allowed_units TEXT, - PRIMARY KEY (type, allowed_units) + classification TEXT, + description TEXT, + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "ClinicalCohort" ( +CREATE TABLE "UnitConcept" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - definition TEXT, PRIMARY KEY (id), - FOREIGN KEY(definition) REFERENCES "ClinicalCohortDefinition" (id) + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "DataGenerationFromSample" ( +CREATE TABLE "CurrencyConcept" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, 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, PRIMARY KEY (id), - FOREIGN KEY(uses_physical_device) REFERENCES "PhysicalDevice" (id), - FOREIGN KEY(follows_procedure) REFERENCES "InvestigativeProtocol" (id), - FOREIGN KEY(part_of) REFERENCES "Investigation" (id) + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "Duration" ( +CREATE TABLE "PowerPlantType" ( + id TEXT NOT NULL, + name TEXT, type TEXT, - has_quantity_kind TEXT, - PRIMARY KEY (type, has_quantity_kind), - FOREIGN KEY(has_quantity_kind) REFERENCES "QuantityKind" (id) + classification TEXT, + description TEXT, + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "EngineeringMaterialProcessing" ( +CREATE TABLE "FossilFuel" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, 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), - FOREIGN KEY(follows_procedure) REFERENCES "Procedure" (id), - FOREIGN KEY(uses_physical_device) REFERENCES "PhysicalDevice" (id) + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "EngineeringProcess" ( +CREATE TABLE "ElectricalGrid" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, 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), - FOREIGN KEY(follows_procedure) REFERENCES "EngineeringSpecification" (id), - FOREIGN KEY(part_of) REFERENCES "EngineeringProcess" (id) + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "FoodIngredient" ( +CREATE TABLE "TimePointOrTemporalInterval" ( + id INTEGER NOT NULL, type TEXT, - has_quantity_kind TEXT, - "FoodRecipe_id" TEXT, - PRIMARY KEY (type, has_quantity_kind, "FoodRecipe_id"), - FOREIGN KEY(has_quantity_kind) REFERENCES "QuantityKind" (id), - FOREIGN KEY("FoodRecipe_id") REFERENCES "FoodRecipe" (id) + starts_at_id INTEGER, + ends_at_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(starts_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(ends_at_id) REFERENCES "TimePoint" (id) ); - -CREATE TABLE "FoodProcessing" ( +CREATE TABLE "ExtractiveIndustryEquipment" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, 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, PRIMARY KEY (id), - FOREIGN KEY(follows_procedure) REFERENCES "Procedure" (id), - FOREIGN KEY(uses_physical_device) REFERENCES "PhysicalDevice" (id), - FOREIGN KEY("FoodRecipe_id") REFERENCES "FoodRecipe" (id) + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "HealthcareConditionOccurrence" ( +CREATE TABLE "ExtractiveIndustryWaste" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, 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), - FOREIGN KEY(observed_during) REFERENCES "HealthcareEncounter" (id) + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "HealthcareProvider" ( +CREATE TABLE "EnvironmentalSite" ( + id TEXT NOT NULL, + name TEXT, type TEXT, - is_person TEXT, - speciality TEXT, - care_site TEXT, - 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) + classification TEXT, + description TEXT, + address_id INTEGER, + geolocation_id INTEGER, + bounding_coordinates_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(address_id) REFERENCES "PostalAddress" (id), + FOREIGN KEY(geolocation_id) REFERENCES "GeoPointLocation" (id), + FOREIGN KEY(bounding_coordinates_id) REFERENCES "GeoBoxLocation" (id) ); - -CREATE TABLE "HealthcareRole" ( +CREATE TABLE "FoodRecipe" ( + id TEXT NOT NULL, + name TEXT, type TEXT, - is_person TEXT, - PRIMARY KEY (type, is_person), - FOREIGN KEY(is_person) REFERENCES "Person" (id) + classification TEXT, + description TEXT, + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "InvestigativeProcess" ( +CREATE TABLE "FoodTypeConcept" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, 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, PRIMARY KEY (id), - FOREIGN KEY(uses_physical_device) REFERENCES "PhysicalDevice" (id), - FOREIGN KEY(follows_procedure) REFERENCES "InvestigativeProtocol" (id), - FOREIGN KEY(part_of) REFERENCES "Investigation" (id) + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "MaterialCollection" ( +CREATE TABLE "BasicFoodType" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, 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), - FOREIGN KEY(follows_procedure) REFERENCES "Procedure" (id), - FOREIGN KEY(uses_physical_device) REFERENCES "PhysicalDevice" (id) + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "MaterialProcessing" ( +CREATE TABLE "CompositeFoodType" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, 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), - FOREIGN KEY(follows_procedure) REFERENCES "Procedure" (id), - FOREIGN KEY(uses_physical_device) REFERENCES "PhysicalDevice" (id) + FOREIGN KEY(classification) REFERENCES "Concept" (id) +); +CREATE TABLE "Concept_ontology_types" ( + "Concept_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("Concept_id", ontology_types_id), + FOREIGN KEY("Concept_id") REFERENCES "Concept" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "MathematicalOperation_inputs" ( + "MathematicalOperation_id" INTEGER, + inputs_id INTEGER, + PRIMARY KEY ("MathematicalOperation_id", inputs_id), + FOREIGN KEY("MathematicalOperation_id") REFERENCES "MathematicalOperation" (id), + FOREIGN KEY(inputs_id) REFERENCES "Any" (id) +); +CREATE TABLE "MathematicalOperation_outputs" ( + "MathematicalOperation_id" INTEGER, + outputs_id INTEGER, + PRIMARY KEY ("MathematicalOperation_id", outputs_id), + FOREIGN KEY("MathematicalOperation_id") REFERENCES "MathematicalOperation" (id), + FOREIGN KEY(outputs_id) REFERENCES "Any" (id) +); +CREATE TABLE "MathematicalOperation_parts" ( + "MathematicalOperation_id" INTEGER, + parts_id INTEGER, + PRIMARY KEY ("MathematicalOperation_id", parts_id), + FOREIGN KEY("MathematicalOperation_id") REFERENCES "MathematicalOperation" (id), + FOREIGN KEY(parts_id) REFERENCES "MathematicalOperation" (id) +); +CREATE TABLE "MathematicalOperation_immediate_preceding_steps" ( + "MathematicalOperation_id" INTEGER, + immediate_preceding_steps_id INTEGER, + PRIMARY KEY ("MathematicalOperation_id", immediate_preceding_steps_id), + FOREIGN KEY("MathematicalOperation_id") REFERENCES "MathematicalOperation" (id), + FOREIGN KEY(immediate_preceding_steps_id) REFERENCES "MathematicalOperation" (id) +); +CREATE TABLE "UnitConversionOperation_parts" ( + "UnitConversionOperation_id" INTEGER, + parts_id INTEGER, + PRIMARY KEY ("UnitConversionOperation_id", parts_id), + FOREIGN KEY("UnitConversionOperation_id") REFERENCES "UnitConversionOperation" (id), + FOREIGN KEY(parts_id) REFERENCES "MathematicalOperation" (id) +); +CREATE TABLE "UnitConversionOperation_immediate_preceding_steps" ( + "UnitConversionOperation_id" INTEGER, + immediate_preceding_steps_id INTEGER, + PRIMARY KEY ("UnitConversionOperation_id", immediate_preceding_steps_id), + FOREIGN KEY("UnitConversionOperation_id") REFERENCES "UnitConversionOperation" (id), + FOREIGN KEY(immediate_preceding_steps_id) REFERENCES "MathematicalOperation" (id) +); +CREATE TABLE "Event_ontology_types" ( + "Event_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("Event_id", ontology_types_id), + FOREIGN KEY("Event_id") REFERENCES "Event" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "Facility" ( + located_at_place TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + PRIMARY KEY (id), + FOREIGN KEY(located_at_place) REFERENCES "Place" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - -CREATE TABLE "Patient" ( +CREATE TABLE "Building" ( + located_at_place TEXT, + id TEXT NOT NULL, + name TEXT, type TEXT, + classification TEXT, + description TEXT, + PRIMARY KEY (id), + FOREIGN KEY(located_at_place) REFERENCES "Place" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) +); +CREATE TABLE "HealthcareRole" ( + id INTEGER NOT NULL, is_person TEXT, - PRIMARY KEY (type, is_person), + type TEXT, + PRIMARY KEY (id), FOREIGN KEY(is_person) REFERENCES "Person" (id) ); - -CREATE TABLE "PlannedProcess" ( +CREATE TABLE "HealthcareProvider" ( + id INTEGER NOT NULL, + speciality TEXT, + care_site TEXT, + is_person TEXT, + type TEXT, + PRIMARY KEY (id), + FOREIGN KEY(speciality) REFERENCES "Concept" (id), + FOREIGN KEY(care_site) REFERENCES "HealthcareSite" (id), + FOREIGN KEY(is_person) REFERENCES "Person" (id) +); +CREATE TABLE "Patient" ( + id INTEGER NOT NULL, + is_person TEXT, + type TEXT, + PRIMARY KEY (id), + FOREIGN KEY(is_person) REFERENCES "Person" (id) +); +CREATE TABLE "ClinicalCohort" ( + definition TEXT, id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, 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), - FOREIGN KEY(follows_procedure) REFERENCES "Procedure" (id), - FOREIGN KEY(uses_physical_device) REFERENCES "PhysicalDevice" (id) + FOREIGN KEY(definition) REFERENCES "ClinicalCohortDefinition" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id) ); - CREATE TABLE "Quantity" ( + id INTEGER NOT NULL, + has_quantity_kind TEXT, type TEXT, + PRIMARY KEY (id), + FOREIGN KEY(has_quantity_kind) REFERENCES "QuantityKind" (id) +); +CREATE TABLE "SimpleQuantity" ( + id INTEGER NOT NULL, + value FLOAT, + unit TEXT, has_quantity_kind TEXT, - PRIMARY KEY (type, has_quantity_kind), + type TEXT, + PRIMARY KEY (id), + FOREIGN KEY(unit) REFERENCES "UnitConcept" (id), FOREIGN KEY(has_quantity_kind) REFERENCES "QuantityKind" (id) ); - -CREATE TABLE "Ratio" ( +CREATE TABLE "MoneyQuantity" ( + id INTEGER NOT NULL, + value FLOAT, + unit TEXT, + has_quantity_kind TEXT, + type TEXT, + PRIMARY KEY (id), + FOREIGN KEY(unit) REFERENCES "CurrencyConcept" (id), + FOREIGN KEY(has_quantity_kind) REFERENCES "QuantityKind" (id) +); +CREATE TABLE "FinancialAccount" ( + id INTEGER NOT NULL, + account_number TEXT, + bank TEXT, + account_holder TEXT, type TEXT, + PRIMARY KEY (id), + FOREIGN KEY(bank) REFERENCES "Organization" (id), + FOREIGN KEY(account_holder) REFERENCES "Person" (id) +); +CREATE TABLE "Duration" ( + id INTEGER NOT NULL, has_quantity_kind TEXT, - numerator TEXT, - denominator TEXT, - PRIMARY KEY (type, has_quantity_kind, numerator, denominator), + type TEXT, + PRIMARY KEY (id), FOREIGN KEY(has_quantity_kind) REFERENCES "QuantityKind" (id) ); - -CREATE TABLE "SampleCollectionProcess" ( +CREATE TABLE "TemporalRelationship" ( + id INTEGER NOT NULL, + predicate VARCHAR(15), + type TEXT, + relative_to_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(relative_to_id) REFERENCES "Entity" (id) +); +CREATE TABLE "FoodIngredient" ( + id INTEGER NOT NULL, + has_quantity_kind TEXT, + type TEXT, + PRIMARY KEY (id), + FOREIGN KEY(has_quantity_kind) REFERENCES "QuantityKind" (id) +); +CREATE TABLE "NamedThing_ontology_types" ( + "NamedThing_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("NamedThing_id", ontology_types_id), + FOREIGN KEY("NamedThing_id") REFERENCES "NamedThing" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "InformationEntity_ontology_types" ( + "InformationEntity_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("InformationEntity_id", ontology_types_id), + FOREIGN KEY("InformationEntity_id") REFERENCES "InformationEntity" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "PhysicalDevice_ontology_types" ( + "PhysicalDevice_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("PhysicalDevice_id", ontology_types_id), + FOREIGN KEY("PhysicalDevice_id") REFERENCES "PhysicalDevice" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "Specification_ontology_types" ( + "Specification_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("Specification_id", ontology_types_id), + FOREIGN KEY("Specification_id") REFERENCES "Specification" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "Procedure_ontology_types" ( + "Procedure_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("Procedure_id", ontology_types_id), + FOREIGN KEY("Procedure_id") REFERENCES "Procedure" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "Publication_creators" ( + "Publication_id" TEXT, + creators_id TEXT, + PRIMARY KEY ("Publication_id", creators_id), + FOREIGN KEY("Publication_id") REFERENCES "Publication" (id), + FOREIGN KEY(creators_id) REFERENCES "Agent" (id) +); +CREATE TABLE "Publication_contributors" ( + "Publication_id" TEXT, + contributors_id TEXT, + PRIMARY KEY ("Publication_id", contributors_id), + FOREIGN KEY("Publication_id") REFERENCES "Publication" (id), + FOREIGN KEY(contributors_id) REFERENCES "Agent" (id) +); +CREATE TABLE "Publication_contacts" ( + "Publication_id" TEXT, + contacts_id TEXT, + PRIMARY KEY ("Publication_id", contacts_id), + FOREIGN KEY("Publication_id") REFERENCES "Publication" (id), + FOREIGN KEY(contacts_id) REFERENCES "Agent" (id) +); +CREATE TABLE "Publication_keywords" ( + "Publication_id" TEXT, + keywords TEXT, + PRIMARY KEY ("Publication_id", keywords), + FOREIGN KEY("Publication_id") REFERENCES "Publication" (id) +); +CREATE TABLE "Publication_ontology_types" ( + "Publication_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("Publication_id", ontology_types_id), + FOREIGN KEY("Publication_id") REFERENCES "Publication" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "Agent_ontology_types" ( + "Agent_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("Agent_id", ontology_types_id), + FOREIGN KEY("Agent_id") REFERENCES "Agent" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "Person_ontology_types" ( + "Person_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("Person_id", ontology_types_id), + FOREIGN KEY("Person_id") REFERENCES "Person" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "Organization_ontology_types" ( + "Organization_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("Organization_id", ontology_types_id), + FOREIGN KEY("Organization_id") REFERENCES "Organization" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "AutomatedAgent_ontology_types" ( + "AutomatedAgent_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("AutomatedAgent_id", ontology_types_id), + FOREIGN KEY("AutomatedAgent_id") REFERENCES "AutomatedAgent" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "CreativeWork_creators" ( + "CreativeWork_id" TEXT, + creators_id TEXT, + PRIMARY KEY ("CreativeWork_id", creators_id), + FOREIGN KEY("CreativeWork_id") REFERENCES "CreativeWork" (id), + FOREIGN KEY(creators_id) REFERENCES "Agent" (id) +); +CREATE TABLE "CreativeWork_contributors" ( + "CreativeWork_id" TEXT, + contributors_id TEXT, + PRIMARY KEY ("CreativeWork_id", contributors_id), + FOREIGN KEY("CreativeWork_id") REFERENCES "CreativeWork" (id), + FOREIGN KEY(contributors_id) REFERENCES "Agent" (id) +); +CREATE TABLE "CreativeWork_contacts" ( + "CreativeWork_id" TEXT, + contacts_id TEXT, + PRIMARY KEY ("CreativeWork_id", contacts_id), + FOREIGN KEY("CreativeWork_id") REFERENCES "CreativeWork" (id), + FOREIGN KEY(contacts_id) REFERENCES "Agent" (id) +); +CREATE TABLE "CreativeWork_keywords" ( + "CreativeWork_id" TEXT, + keywords TEXT, + PRIMARY KEY ("CreativeWork_id", keywords), + FOREIGN KEY("CreativeWork_id") REFERENCES "CreativeWork" (id) +); +CREATE TABLE "CreativeWork_ontology_types" ( + "CreativeWork_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("CreativeWork_id", ontology_types_id), + FOREIGN KEY("CreativeWork_id") REFERENCES "CreativeWork" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "Investigation_variables" ( + "Investigation_id" TEXT, + variables_id INTEGER, + PRIMARY KEY ("Investigation_id", variables_id), + FOREIGN KEY("Investigation_id") REFERENCES "Investigation" (id), + FOREIGN KEY(variables_id) REFERENCES "Variable" (id) +); +CREATE TABLE "Investigation_ontology_types" ( + "Investigation_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("Investigation_id", ontology_types_id), + FOREIGN KEY("Investigation_id") REFERENCES "Investigation" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "InvestigativeProtocol_ontology_types" ( + "InvestigativeProtocol_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("InvestigativeProtocol_id", ontology_types_id), + FOREIGN KEY("InvestigativeProtocol_id") REFERENCES "InvestigativeProtocol" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "StudyDesign_ontology_types" ( + "StudyDesign_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("StudyDesign_id", ontology_types_id), + FOREIGN KEY("StudyDesign_id") REFERENCES "StudyDesign" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "SampleMaterial_ontology_types" ( + "SampleMaterial_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("SampleMaterial_id", ontology_types_id), + FOREIGN KEY("SampleMaterial_id") REFERENCES "SampleMaterial" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "Dataset_collected_as_part_of" ( + "Dataset_id" TEXT, + collected_as_part_of_id TEXT, + PRIMARY KEY ("Dataset_id", collected_as_part_of_id), + FOREIGN KEY("Dataset_id") REFERENCES "Dataset" (id), + FOREIGN KEY(collected_as_part_of_id) REFERENCES "Investigation" (id) +); +CREATE TABLE "Dataset_creators" ( + "Dataset_id" TEXT, + creators_id TEXT, + PRIMARY KEY ("Dataset_id", creators_id), + FOREIGN KEY("Dataset_id") REFERENCES "Dataset" (id), + FOREIGN KEY(creators_id) REFERENCES "Agent" (id) +); +CREATE TABLE "Dataset_contributors" ( + "Dataset_id" TEXT, + contributors_id TEXT, + PRIMARY KEY ("Dataset_id", contributors_id), + FOREIGN KEY("Dataset_id") REFERENCES "Dataset" (id), + FOREIGN KEY(contributors_id) REFERENCES "Agent" (id) +); +CREATE TABLE "Dataset_contacts" ( + "Dataset_id" TEXT, + contacts_id TEXT, + PRIMARY KEY ("Dataset_id", contacts_id), + FOREIGN KEY("Dataset_id") REFERENCES "Dataset" (id), + FOREIGN KEY(contacts_id) REFERENCES "Agent" (id) +); +CREATE TABLE "Dataset_keywords" ( + "Dataset_id" TEXT, + keywords TEXT, + PRIMARY KEY ("Dataset_id", keywords), + FOREIGN KEY("Dataset_id") REFERENCES "Dataset" (id) +); +CREATE TABLE "Dataset_ontology_types" ( + "Dataset_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("Dataset_id", ontology_types_id), + FOREIGN KEY("Dataset_id") REFERENCES "Dataset" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "BuiltEnvironmentFeature_ontology_types" ( + "BuiltEnvironmentFeature_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("BuiltEnvironmentFeature_id", ontology_types_id), + FOREIGN KEY("BuiltEnvironmentFeature_id") REFERENCES "BuiltEnvironmentFeature" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "BuiltSystem_ontology_types" ( + "BuiltSystem_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("BuiltSystem_id", ontology_types_id), + FOREIGN KEY("BuiltSystem_id") REFERENCES "BuiltSystem" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "HealthcareSite_ontology_types" ( + "HealthcareSite_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("HealthcareSite_id", ontology_types_id), + FOREIGN KEY("HealthcareSite_id") REFERENCES "HealthcareSite" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "HealthcareOrganization_ontology_types" ( + "HealthcareOrganization_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("HealthcareOrganization_id", ontology_types_id), + FOREIGN KEY("HealthcareOrganization_id") REFERENCES "HealthcareOrganization" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "ClinicalCohortDefinition_ontology_types" ( + "ClinicalCohortDefinition_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("ClinicalCohortDefinition_id", ontology_types_id), + FOREIGN KEY("ClinicalCohortDefinition_id") REFERENCES "ClinicalCohortDefinition" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "EngineeringSpecification_ontology_types" ( + "EngineeringSpecification_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("EngineeringSpecification_id", ontology_types_id), + FOREIGN KEY("EngineeringSpecification_id") REFERENCES "EngineeringSpecification" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "RawMaterial_ontology_types" ( + "RawMaterial_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("RawMaterial_id", ontology_types_id), + FOREIGN KEY("RawMaterial_id") REFERENCES "RawMaterial" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "Equipment_ontology_types" ( + "Equipment_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("Equipment_id", ontology_types_id), + FOREIGN KEY("Equipment_id") REFERENCES "Equipment" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "Place_ontology_types" ( + "Place_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("Place_id", ontology_types_id), + FOREIGN KEY("Place_id") REFERENCES "Place" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "Landform_ontology_types" ( + "Landform_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("Landform_id", ontology_types_id), + FOREIGN KEY("Landform_id") REFERENCES "Landform" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "QuantityKind_ontology_types" ( + "QuantityKind_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("QuantityKind_id", ontology_types_id), + FOREIGN KEY("QuantityKind_id") REFERENCES "QuantityKind" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "UnitConcept_ontology_types" ( + "UnitConcept_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("UnitConcept_id", ontology_types_id), + FOREIGN KEY("UnitConcept_id") REFERENCES "UnitConcept" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "CurrencyConcept_ontology_types" ( + "CurrencyConcept_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("CurrencyConcept_id", ontology_types_id), + FOREIGN KEY("CurrencyConcept_id") REFERENCES "CurrencyConcept" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "PowerPlantType_ontology_types" ( + "PowerPlantType_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("PowerPlantType_id", ontology_types_id), + FOREIGN KEY("PowerPlantType_id") REFERENCES "PowerPlantType" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "FossilFuel_ontology_types" ( + "FossilFuel_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("FossilFuel_id", ontology_types_id), + FOREIGN KEY("FossilFuel_id") REFERENCES "FossilFuel" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "ElectricalGrid_ontology_types" ( + "ElectricalGrid_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("ElectricalGrid_id", ontology_types_id), + FOREIGN KEY("ElectricalGrid_id") REFERENCES "ElectricalGrid" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "Variable_allowed_units" ( + "Variable_id" INTEGER, + allowed_units_id TEXT, + PRIMARY KEY ("Variable_id", allowed_units_id), + FOREIGN KEY("Variable_id") REFERENCES "Variable" (id), + FOREIGN KEY(allowed_units_id) REFERENCES "UnitConcept" (id) +); +CREATE TABLE "ExtractiveIndustryEquipment_ontology_types" ( + "ExtractiveIndustryEquipment_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("ExtractiveIndustryEquipment_id", ontology_types_id), + FOREIGN KEY("ExtractiveIndustryEquipment_id") REFERENCES "ExtractiveIndustryEquipment" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "ExtractiveIndustryWaste_ontology_types" ( + "ExtractiveIndustryWaste_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("ExtractiveIndustryWaste_id", ontology_types_id), + FOREIGN KEY("ExtractiveIndustryWaste_id") REFERENCES "ExtractiveIndustryWaste" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "EnvironmentalSite_ontology_types" ( + "EnvironmentalSite_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("EnvironmentalSite_id", ontology_types_id), + FOREIGN KEY("EnvironmentalSite_id") REFERENCES "EnvironmentalSite" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "FoodRecipe_ontology_types" ( + "FoodRecipe_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("FoodRecipe_id", ontology_types_id), + FOREIGN KEY("FoodRecipe_id") REFERENCES "FoodRecipe" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "FoodTypeConcept_ontology_types" ( + "FoodTypeConcept_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("FoodTypeConcept_id", ontology_types_id), + FOREIGN KEY("FoodTypeConcept_id") REFERENCES "FoodTypeConcept" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "BasicFoodType_ontology_types" ( + "BasicFoodType_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("BasicFoodType_id", ontology_types_id), + FOREIGN KEY("BasicFoodType_id") REFERENCES "BasicFoodType" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "CompositeFoodType_ontology_types" ( + "CompositeFoodType_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("CompositeFoodType_id", ontology_types_id), + FOREIGN KEY("CompositeFoodType_id") REFERENCES "CompositeFoodType" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "LifeEvent" ( id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - starts_at TEXT, - ends_at TEXT, - happens_at TEXT, - has_interval TEXT, - has_duration TEXT, - uses_physical_device TEXT, + starts_at_id INTEGER, + ends_at_id INTEGER, + happens_at_id INTEGER, + has_interval_id INTEGER, + has_duration_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(starts_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(ends_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(happens_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(has_interval_id) REFERENCES "TemporalInterval" (id), + FOREIGN KEY(has_duration_id) REFERENCES "Duration" (id) +); +CREATE TABLE "InvestigativeProcess" ( follows_procedure TEXT, part_of TEXT, + uses_physical_device TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + starts_at_id INTEGER, + ends_at_id INTEGER, + happens_at_id INTEGER, + has_interval_id INTEGER, + has_duration_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(follows_procedure) REFERENCES "InvestigativeProtocol" (id), + FOREIGN KEY(part_of) REFERENCES "Investigation" (id), + FOREIGN KEY(uses_physical_device) REFERENCES "PhysicalDevice" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(starts_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(ends_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(happens_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(has_interval_id) REFERENCES "TemporalInterval" (id), + FOREIGN KEY(has_duration_id) REFERENCES "Duration" (id) +); +CREATE TABLE "SampleCollectionProcess" ( material_collected TEXT, collected_from TEXT, + follows_procedure TEXT, + part_of TEXT, + uses_physical_device TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + starts_at_id INTEGER, + ends_at_id INTEGER, + happens_at_id INTEGER, + has_interval_id INTEGER, + has_duration_id INTEGER, PRIMARY KEY (id), - FOREIGN KEY(uses_physical_device) REFERENCES "PhysicalDevice" (id), + FOREIGN KEY(material_collected) REFERENCES "SampleMaterial" (id), + FOREIGN KEY(collected_from) REFERENCES "NamedThing" (id), FOREIGN KEY(follows_procedure) REFERENCES "InvestigativeProtocol" (id), FOREIGN KEY(part_of) REFERENCES "Investigation" (id), - FOREIGN KEY(material_collected) REFERENCES "SampleMaterial" (id), - FOREIGN KEY(collected_from) REFERENCES "NamedThing" (id) + FOREIGN KEY(uses_physical_device) REFERENCES "PhysicalDevice" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(starts_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(ends_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(happens_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(has_interval_id) REFERENCES "TemporalInterval" (id), + FOREIGN KEY(has_duration_id) REFERENCES "Duration" (id) ); - CREATE TABLE "SampleProcessing" ( + follows_procedure TEXT, + uses_physical_device TEXT, id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - starts_at TEXT, - ends_at TEXT, - happens_at TEXT, - has_interval TEXT, - has_duration TEXT, + starts_at_id INTEGER, + ends_at_id INTEGER, + happens_at_id INTEGER, + has_interval_id INTEGER, + has_duration_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(follows_procedure) REFERENCES "Procedure" (id), + FOREIGN KEY(uses_physical_device) REFERENCES "PhysicalDevice" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(starts_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(ends_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(happens_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(has_interval_id) REFERENCES "TemporalInterval" (id), + FOREIGN KEY(has_duration_id) REFERENCES "Duration" (id) +); +CREATE TABLE "DataGenerationFromSample" ( follows_procedure TEXT, + part_of TEXT, uses_physical_device TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + starts_at_id INTEGER, + ends_at_id INTEGER, + happens_at_id INTEGER, + has_interval_id INTEGER, + has_duration_id INTEGER, PRIMARY KEY (id), - FOREIGN KEY(follows_procedure) REFERENCES "Procedure" (id), - FOREIGN KEY(uses_physical_device) REFERENCES "PhysicalDevice" (id) + FOREIGN KEY(follows_procedure) REFERENCES "InvestigativeProtocol" (id), + FOREIGN KEY(part_of) REFERENCES "Investigation" (id), + FOREIGN KEY(uses_physical_device) REFERENCES "PhysicalDevice" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(starts_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(ends_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(happens_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(has_interval_id) REFERENCES "TemporalInterval" (id), + FOREIGN KEY(has_duration_id) REFERENCES "Duration" (id) ); - -CREATE TABLE "SimpleQuantity" ( +CREATE TABLE "HealthcareEncounter" ( + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification VARCHAR(34), + description TEXT, + patient_id INTEGER, + provider_id INTEGER, + starts_at_id INTEGER, + ends_at_id INTEGER, + happens_at_id INTEGER, + has_interval_id INTEGER, + has_duration_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(patient_id) REFERENCES "Patient" (id), + FOREIGN KEY(provider_id) REFERENCES "HealthcareProvider" (id), + FOREIGN KEY(starts_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(ends_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(happens_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(has_interval_id) REFERENCES "TemporalInterval" (id), + FOREIGN KEY(has_duration_id) REFERENCES "Duration" (id) +); +CREATE TABLE "ClinicalCohortEnrollment" ( + cohort TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + patient_id INTEGER, + starts_at_id INTEGER, + ends_at_id INTEGER, + happens_at_id INTEGER, + has_interval_id INTEGER, + has_duration_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(cohort) REFERENCES "ClinicalCohort" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(patient_id) REFERENCES "Patient" (id), + FOREIGN KEY(starts_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(ends_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(happens_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(has_interval_id) REFERENCES "TemporalInterval" (id), + FOREIGN KEY(has_duration_id) REFERENCES "Duration" (id) +); +CREATE TABLE "EngineeringProcess" ( + follows_procedure TEXT, + part_of TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + starts_at_id INTEGER, + ends_at_id INTEGER, + happens_at_id INTEGER, + has_interval_id INTEGER, + has_duration_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(follows_procedure) REFERENCES "EngineeringSpecification" (id), + FOREIGN KEY(part_of) REFERENCES "EngineeringProcess" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(starts_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(ends_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(happens_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(has_interval_id) REFERENCES "TemporalInterval" (id), + FOREIGN KEY(has_duration_id) REFERENCES "Duration" (id) +); +CREATE TABLE "EngineeringMaterialProcessing" ( + follows_procedure TEXT, + uses_physical_device TEXT, + id TEXT NOT NULL, + name TEXT, type TEXT, + classification TEXT, + description TEXT, + starts_at_id INTEGER, + ends_at_id INTEGER, + happens_at_id INTEGER, + has_interval_id INTEGER, + has_duration_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(follows_procedure) REFERENCES "Procedure" (id), + FOREIGN KEY(uses_physical_device) REFERENCES "PhysicalDevice" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(starts_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(ends_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(happens_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(has_interval_id) REFERENCES "TemporalInterval" (id), + FOREIGN KEY(has_duration_id) REFERENCES "Duration" (id) +); +CREATE TABLE "Ratio" ( + id INTEGER NOT NULL, has_quantity_kind TEXT, - value FLOAT, - unit TEXT, - PRIMARY KEY (type, has_quantity_kind, value, unit), + type TEXT, + numerator_id INTEGER, + denominator_id INTEGER, + PRIMARY KEY (id), FOREIGN KEY(has_quantity_kind) REFERENCES "QuantityKind" (id), - FOREIGN KEY(unit) REFERENCES "UnitConcept" (id) + FOREIGN KEY(numerator_id) REFERENCES "Quantity" (id), + FOREIGN KEY(denominator_id) REFERENCES "Quantity" (id) ); - -CREATE TABLE "TimePoint" ( +CREATE TABLE "QuantityRange" ( + id INTEGER NOT NULL, type TEXT, - starts_at TEXT, - ends_at TEXT, - year_value INTEGER, - date_value DATE, - time_value TIME, - datetime_value DATETIME, - marker_event TEXT, + lower_bound_id INTEGER, + upper_bound_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(lower_bound_id) REFERENCES "Quantity" (id), + FOREIGN KEY(upper_bound_id) REFERENCES "Quantity" (id) +); +CREATE TABLE "PowerPlant" ( + plant_type TEXT, + location TEXT, + operator TEXT, + commissioning_date DATE, + decommissioning_date DATE, + located_at_place TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, description TEXT, - 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) + capacity_id INTEGER, + capex_id INTEGER, + opex_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(plant_type) REFERENCES "PowerPlantType" (id), + FOREIGN KEY(location) REFERENCES "Place" (id), + FOREIGN KEY(operator) REFERENCES "Organization" (id), + FOREIGN KEY(located_at_place) REFERENCES "Place" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(capacity_id) REFERENCES "SimpleQuantity" (id), + FOREIGN KEY(capex_id) REFERENCES "MoneyQuantity" (id), + FOREIGN KEY(opex_id) REFERENCES "MoneyQuantity" (id) +); +CREATE TABLE "FossilFuelPlant" ( + fuel TEXT, + plant_type TEXT, + location TEXT, + operator TEXT, + commissioning_date DATE, + decommissioning_date DATE, + located_at_place TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + capacity_id INTEGER, + capex_id INTEGER, + opex_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(fuel) REFERENCES "FossilFuel" (id), + FOREIGN KEY(plant_type) REFERENCES "PowerPlantType" (id), + FOREIGN KEY(location) REFERENCES "Place" (id), + FOREIGN KEY(operator) REFERENCES "Organization" (id), + FOREIGN KEY(located_at_place) REFERENCES "Place" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(capacity_id) REFERENCES "SimpleQuantity" (id), + FOREIGN KEY(capex_id) REFERENCES "MoneyQuantity" (id), + FOREIGN KEY(opex_id) REFERENCES "MoneyQuantity" (id) +); +CREATE TABLE "NuclearPlant" ( + plant_type TEXT, + location TEXT, + operator TEXT, + commissioning_date DATE, + decommissioning_date DATE, + located_at_place TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + capacity_id INTEGER, + capex_id INTEGER, + opex_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(plant_type) REFERENCES "PowerPlantType" (id), + FOREIGN KEY(location) REFERENCES "Place" (id), + FOREIGN KEY(operator) REFERENCES "Organization" (id), + FOREIGN KEY(located_at_place) REFERENCES "Place" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(capacity_id) REFERENCES "SimpleQuantity" (id), + FOREIGN KEY(capex_id) REFERENCES "MoneyQuantity" (id), + FOREIGN KEY(opex_id) REFERENCES "MoneyQuantity" (id) +); +CREATE TABLE "RenewablePlant" ( + plant_type TEXT, + location TEXT, + operator TEXT, + commissioning_date DATE, + decommissioning_date DATE, + located_at_place TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + capacity_id INTEGER, + capex_id INTEGER, + opex_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(plant_type) REFERENCES "PowerPlantType" (id), + FOREIGN KEY(location) REFERENCES "Place" (id), + FOREIGN KEY(operator) REFERENCES "Organization" (id), + FOREIGN KEY(located_at_place) REFERENCES "Place" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(capacity_id) REFERENCES "SimpleQuantity" (id), + FOREIGN KEY(capex_id) REFERENCES "MoneyQuantity" (id), + FOREIGN KEY(opex_id) REFERENCES "MoneyQuantity" (id) +); +CREATE TABLE "HydroelectricPlant" ( + dam TEXT, + plant_type TEXT, + location TEXT, + operator TEXT, + commissioning_date DATE, + decommissioning_date DATE, + located_at_place TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + capacity_id INTEGER, + capex_id INTEGER, + opex_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(dam) REFERENCES "Landform" (id), + FOREIGN KEY(plant_type) REFERENCES "PowerPlantType" (id), + FOREIGN KEY(location) REFERENCES "Place" (id), + FOREIGN KEY(operator) REFERENCES "Organization" (id), + FOREIGN KEY(located_at_place) REFERENCES "Place" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(capacity_id) REFERENCES "SimpleQuantity" (id), + FOREIGN KEY(capex_id) REFERENCES "MoneyQuantity" (id), + FOREIGN KEY(opex_id) REFERENCES "MoneyQuantity" (id) +); +CREATE TABLE "SolarPlant" ( + plant_type TEXT, + location TEXT, + operator TEXT, + commissioning_date DATE, + decommissioning_date DATE, + located_at_place TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + capacity_id INTEGER, + capex_id INTEGER, + opex_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(plant_type) REFERENCES "PowerPlantType" (id), + FOREIGN KEY(location) REFERENCES "Place" (id), + FOREIGN KEY(operator) REFERENCES "Organization" (id), + FOREIGN KEY(located_at_place) REFERENCES "Place" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(capacity_id) REFERENCES "SimpleQuantity" (id), + FOREIGN KEY(capex_id) REFERENCES "MoneyQuantity" (id), + FOREIGN KEY(opex_id) REFERENCES "MoneyQuantity" (id) +); +CREATE TABLE "WindFarm" ( + plant_type TEXT, + location TEXT, + operator TEXT, + commissioning_date DATE, + decommissioning_date DATE, + located_at_place TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + capacity_id INTEGER, + capex_id INTEGER, + opex_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(plant_type) REFERENCES "PowerPlantType" (id), + FOREIGN KEY(location) REFERENCES "Place" (id), + FOREIGN KEY(operator) REFERENCES "Organization" (id), + FOREIGN KEY(located_at_place) REFERENCES "Place" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(capacity_id) REFERENCES "SimpleQuantity" (id), + FOREIGN KEY(capex_id) REFERENCES "MoneyQuantity" (id), + FOREIGN KEY(opex_id) REFERENCES "MoneyQuantity" (id) ); - -CREATE TABLE "CreativeWork_keywords" ( - backref_id TEXT, - keywords TEXT, - PRIMARY KEY (backref_id, keywords), - FOREIGN KEY(backref_id) REFERENCES "CreativeWork" (id) +CREATE TABLE "Measurement" ( + id INTEGER NOT NULL, + type TEXT, + quantity_measured_id INTEGER, + variable_measured_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(quantity_measured_id) REFERENCES "Quantity" (id), + FOREIGN KEY(variable_measured_id) REFERENCES "Variable" (id) ); - -CREATE TABLE "Dataset_keywords" ( - backref_id TEXT, - keywords TEXT, - PRIMARY KEY (backref_id, keywords), - FOREIGN KEY(backref_id) REFERENCES "Dataset" (id) +CREATE TABLE "PlannedProcess" ( + follows_procedure TEXT, + uses_physical_device TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + starts_at_id INTEGER, + ends_at_id INTEGER, + happens_at_id INTEGER, + has_interval_id INTEGER, + has_duration_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(follows_procedure) REFERENCES "Procedure" (id), + FOREIGN KEY(uses_physical_device) REFERENCES "PhysicalDevice" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(starts_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(ends_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(happens_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(has_interval_id) REFERENCES "TemporalInterval" (id), + FOREIGN KEY(has_duration_id) REFERENCES "Duration" (id) ); - -CREATE TABLE "Publication_keywords" ( - backref_id TEXT, - keywords TEXT, - PRIMARY KEY (backref_id, keywords), - FOREIGN KEY(backref_id) REFERENCES "Publication" (id) +CREATE TABLE "MaterialCollection" ( + follows_procedure TEXT, + uses_physical_device TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + starts_at_id INTEGER, + ends_at_id INTEGER, + happens_at_id INTEGER, + has_interval_id INTEGER, + has_duration_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(follows_procedure) REFERENCES "Procedure" (id), + FOREIGN KEY(uses_physical_device) REFERENCES "PhysicalDevice" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(starts_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(ends_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(happens_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(has_interval_id) REFERENCES "TemporalInterval" (id), + FOREIGN KEY(has_duration_id) REFERENCES "Duration" (id) ); - -CREATE TABLE "ClinicalCohortEnrollment" ( +CREATE TABLE "MaterialProcessing" ( + follows_procedure TEXT, + uses_physical_device TEXT, id TEXT NOT NULL, name TEXT, type TEXT, - subtype TEXT, - ontology_types TEXT, + classification TEXT, description TEXT, - starts_at TEXT, - ends_at TEXT, - happens_at TEXT, - has_interval TEXT, - has_duration TEXT, - patient TEXT, - cohort TEXT, + starts_at_id INTEGER, + ends_at_id INTEGER, + happens_at_id INTEGER, + has_interval_id INTEGER, + has_duration_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(follows_procedure) REFERENCES "Procedure" (id), + FOREIGN KEY(uses_physical_device) REFERENCES "PhysicalDevice" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(starts_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(ends_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(happens_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(has_interval_id) REFERENCES "TemporalInterval" (id), + FOREIGN KEY(has_duration_id) REFERENCES "Duration" (id) +); +CREATE TABLE "ExtractiveIndustryFacility" ( + facility_type VARCHAR(15), + operator TEXT, + located_at_place TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + production_capacity_id INTEGER, + annual_production_id INTEGER, + reserves_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(operator) REFERENCES "Organization" (id), + FOREIGN KEY(located_at_place) REFERENCES "Place" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(production_capacity_id) REFERENCES "Quantity" (id), + FOREIGN KEY(annual_production_id) REFERENCES "Quantity" (id), + FOREIGN KEY(reserves_id) REFERENCES "Quantity" (id) +); +CREATE TABLE "MiningFacility" ( + mining_method VARCHAR(11), + facility_type VARCHAR(15), + operator TEXT, + located_at_place TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + depth_id INTEGER, + area_id INTEGER, + production_capacity_id INTEGER, + annual_production_id INTEGER, + reserves_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(operator) REFERENCES "Organization" (id), + FOREIGN KEY(located_at_place) REFERENCES "Place" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(depth_id) REFERENCES "Quantity" (id), + FOREIGN KEY(area_id) REFERENCES "Quantity" (id), + FOREIGN KEY(production_capacity_id) REFERENCES "Quantity" (id), + FOREIGN KEY(annual_production_id) REFERENCES "Quantity" (id), + FOREIGN KEY(reserves_id) REFERENCES "Quantity" (id) +); +CREATE TABLE "WellFacility" ( + well_type VARCHAR(9), + facility_type VARCHAR(15), + operator TEXT, + located_at_place TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + depth_id INTEGER, + production_capacity_id INTEGER, + annual_production_id INTEGER, + reserves_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(operator) REFERENCES "Organization" (id), + FOREIGN KEY(located_at_place) REFERENCES "Place" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(depth_id) REFERENCES "Quantity" (id), + FOREIGN KEY(production_capacity_id) REFERENCES "Quantity" (id), + FOREIGN KEY(annual_production_id) REFERENCES "Quantity" (id), + FOREIGN KEY(reserves_id) REFERENCES "Quantity" (id) +); +CREATE TABLE "QuarryFacility" ( + facility_type VARCHAR(15), + operator TEXT, + located_at_place TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + production_capacity_id INTEGER, + annual_production_id INTEGER, + reserves_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(operator) REFERENCES "Organization" (id), + FOREIGN KEY(located_at_place) REFERENCES "Place" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(production_capacity_id) REFERENCES "Quantity" (id), + FOREIGN KEY(annual_production_id) REFERENCES "Quantity" (id), + FOREIGN KEY(reserves_id) REFERENCES "Quantity" (id) +); +CREATE TABLE "FoodProcessing" ( + follows_procedure TEXT, + uses_physical_device TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + starts_at_id INTEGER, + ends_at_id INTEGER, + happens_at_id INTEGER, + has_interval_id INTEGER, + has_duration_id INTEGER, PRIMARY KEY (id), - FOREIGN KEY(cohort) REFERENCES "ClinicalCohort" (id) + FOREIGN KEY(follows_procedure) REFERENCES "Procedure" (id), + FOREIGN KEY(uses_physical_device) REFERENCES "PhysicalDevice" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(starts_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(ends_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(happens_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(has_interval_id) REFERENCES "TemporalInterval" (id), + FOREIGN KEY(has_duration_id) REFERENCES "Duration" (id) +); +CREATE TABLE "Facility_ontology_types" ( + "Facility_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("Facility_id", ontology_types_id), + FOREIGN KEY("Facility_id") REFERENCES "Facility" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "Building_ontology_types" ( + "Building_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("Building_id", ontology_types_id), + FOREIGN KEY("Building_id") REFERENCES "Building" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "ClinicalCohort_ontology_types" ( + "ClinicalCohort_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("ClinicalCohort_id", ontology_types_id), + FOREIGN KEY("ClinicalCohort_id") REFERENCES "ClinicalCohort" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "UnitConversionOperation_inputs" ( + "UnitConversionOperation_id" INTEGER, + inputs_id INTEGER, + PRIMARY KEY ("UnitConversionOperation_id", inputs_id), + FOREIGN KEY("UnitConversionOperation_id") REFERENCES "UnitConversionOperation" (id), + FOREIGN KEY(inputs_id) REFERENCES "Quantity" (id) +); +CREATE TABLE "UnitConversionOperation_outputs" ( + "UnitConversionOperation_id" INTEGER, + outputs_id INTEGER, + PRIMARY KEY ("UnitConversionOperation_id", outputs_id), + FOREIGN KEY("UnitConversionOperation_id") REFERENCES "UnitConversionOperation" (id), + FOREIGN KEY(outputs_id) REFERENCES "Quantity" (id) +); +CREATE TABLE "FoodRecipe_ingredients" ( + "FoodRecipe_id" TEXT, + ingredients_id INTEGER, + PRIMARY KEY ("FoodRecipe_id", ingredients_id), + FOREIGN KEY("FoodRecipe_id") REFERENCES "FoodRecipe" (id), + FOREIGN KEY(ingredients_id) REFERENCES "FoodIngredient" (id) ); +CREATE TABLE "HealthcareConditionOccurrence" ( + observed_during TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + patient_id INTEGER, + starts_at_id INTEGER, + ends_at_id INTEGER, + happens_at_id INTEGER, + has_interval_id INTEGER, + has_duration_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(observed_during) REFERENCES "HealthcareEncounter" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY(patient_id) REFERENCES "Patient" (id), + FOREIGN KEY(starts_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(ends_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(happens_at_id) REFERENCES "TimePoint" (id), + FOREIGN KEY(has_interval_id) REFERENCES "TemporalInterval" (id), + FOREIGN KEY(has_duration_id) REFERENCES "Duration" (id) +); +CREATE TABLE "ExtractiveIndustryProduct" ( + product_type VARCHAR(7), + processing_method TEXT, + id TEXT NOT NULL, + name TEXT, + type TEXT, + classification TEXT, + description TEXT, + "ExtractiveIndustryFacility_id" TEXT, + "MiningFacility_id" TEXT, + "WellFacility_id" TEXT, + "QuarryFacility_id" TEXT, + grade_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY(processing_method) REFERENCES "EngineeringSpecification" (id), + FOREIGN KEY(classification) REFERENCES "Concept" (id), + FOREIGN KEY("ExtractiveIndustryFacility_id") REFERENCES "ExtractiveIndustryFacility" (id), + FOREIGN KEY("MiningFacility_id") REFERENCES "MiningFacility" (id), + FOREIGN KEY("WellFacility_id") REFERENCES "WellFacility" (id), + FOREIGN KEY("QuarryFacility_id") REFERENCES "QuarryFacility" (id), + FOREIGN KEY(grade_id) REFERENCES "SimpleQuantity" (id) +); +CREATE TABLE "LifeEvent_ontology_types" ( + "LifeEvent_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("LifeEvent_id", ontology_types_id), + FOREIGN KEY("LifeEvent_id") REFERENCES "LifeEvent" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "InvestigativeProcess_ontology_types" ( + "InvestigativeProcess_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("InvestigativeProcess_id", ontology_types_id), + FOREIGN KEY("InvestigativeProcess_id") REFERENCES "InvestigativeProcess" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "SampleCollectionProcess_ontology_types" ( + "SampleCollectionProcess_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("SampleCollectionProcess_id", ontology_types_id), + FOREIGN KEY("SampleCollectionProcess_id") REFERENCES "SampleCollectionProcess" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "SampleProcessing_ontology_types" ( + "SampleProcessing_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("SampleProcessing_id", ontology_types_id), + FOREIGN KEY("SampleProcessing_id") REFERENCES "SampleProcessing" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "DataGenerationFromSample_ontology_types" ( + "DataGenerationFromSample_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("DataGenerationFromSample_id", ontology_types_id), + FOREIGN KEY("DataGenerationFromSample_id") REFERENCES "DataGenerationFromSample" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "HealthcareEncounter_ontology_types" ( + "HealthcareEncounter_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("HealthcareEncounter_id", ontology_types_id), + FOREIGN KEY("HealthcareEncounter_id") REFERENCES "HealthcareEncounter" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "ClinicalCohortEnrollment_ontology_types" ( + "ClinicalCohortEnrollment_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("ClinicalCohortEnrollment_id", ontology_types_id), + FOREIGN KEY("ClinicalCohortEnrollment_id") REFERENCES "ClinicalCohortEnrollment" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "EngineeringProcess_ontology_types" ( + "EngineeringProcess_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("EngineeringProcess_id", ontology_types_id), + FOREIGN KEY("EngineeringProcess_id") REFERENCES "EngineeringProcess" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "EngineeringMaterialProcessing_ontology_types" ( + "EngineeringMaterialProcessing_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("EngineeringMaterialProcessing_id", ontology_types_id), + FOREIGN KEY("EngineeringMaterialProcessing_id") REFERENCES "EngineeringMaterialProcessing" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "PowerPlant_ontology_types" ( + "PowerPlant_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("PowerPlant_id", ontology_types_id), + FOREIGN KEY("PowerPlant_id") REFERENCES "PowerPlant" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "FossilFuelPlant_ontology_types" ( + "FossilFuelPlant_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("FossilFuelPlant_id", ontology_types_id), + FOREIGN KEY("FossilFuelPlant_id") REFERENCES "FossilFuelPlant" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "NuclearPlant_ontology_types" ( + "NuclearPlant_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("NuclearPlant_id", ontology_types_id), + FOREIGN KEY("NuclearPlant_id") REFERENCES "NuclearPlant" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "RenewablePlant_ontology_types" ( + "RenewablePlant_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("RenewablePlant_id", ontology_types_id), + FOREIGN KEY("RenewablePlant_id") REFERENCES "RenewablePlant" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "HydroelectricPlant_ontology_types" ( + "HydroelectricPlant_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("HydroelectricPlant_id", ontology_types_id), + FOREIGN KEY("HydroelectricPlant_id") REFERENCES "HydroelectricPlant" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "SolarPlant_ontology_types" ( + "SolarPlant_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("SolarPlant_id", ontology_types_id), + FOREIGN KEY("SolarPlant_id") REFERENCES "SolarPlant" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "WindFarm_ontology_types" ( + "WindFarm_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("WindFarm_id", ontology_types_id), + FOREIGN KEY("WindFarm_id") REFERENCES "WindFarm" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "ElectricalGrid_plants" ( + "ElectricalGrid_id" TEXT, + plants_id TEXT, + PRIMARY KEY ("ElectricalGrid_id", plants_id), + FOREIGN KEY("ElectricalGrid_id") REFERENCES "ElectricalGrid" (id), + FOREIGN KEY(plants_id) REFERENCES "PowerPlant" (id) +); +CREATE TABLE "PlannedProcess_ontology_types" ( + "PlannedProcess_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("PlannedProcess_id", ontology_types_id), + FOREIGN KEY("PlannedProcess_id") REFERENCES "PlannedProcess" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "MaterialCollection_ontology_types" ( + "MaterialCollection_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("MaterialCollection_id", ontology_types_id), + FOREIGN KEY("MaterialCollection_id") REFERENCES "MaterialCollection" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "MaterialProcessing_ontology_types" ( + "MaterialProcessing_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("MaterialProcessing_id", ontology_types_id), + FOREIGN KEY("MaterialProcessing_id") REFERENCES "MaterialProcessing" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "ExtractiveIndustryFacility_ontology_types" ( + "ExtractiveIndustryFacility_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("ExtractiveIndustryFacility_id", ontology_types_id), + FOREIGN KEY("ExtractiveIndustryFacility_id") REFERENCES "ExtractiveIndustryFacility" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "MiningFacility_ontology_types" ( + "MiningFacility_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("MiningFacility_id", ontology_types_id), + FOREIGN KEY("MiningFacility_id") REFERENCES "MiningFacility" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "WellFacility_ontology_types" ( + "WellFacility_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("WellFacility_id", ontology_types_id), + FOREIGN KEY("WellFacility_id") REFERENCES "WellFacility" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "QuarryFacility_ontology_types" ( + "QuarryFacility_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("QuarryFacility_id", ontology_types_id), + FOREIGN KEY("QuarryFacility_id") REFERENCES "QuarryFacility" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "FoodRecipe_steps" ( + "FoodRecipe_id" TEXT, + steps_id TEXT, + PRIMARY KEY ("FoodRecipe_id", steps_id), + FOREIGN KEY("FoodRecipe_id") REFERENCES "FoodRecipe" (id), + FOREIGN KEY(steps_id) REFERENCES "FoodProcessing" (id) +); +CREATE TABLE "FoodProcessing_ontology_types" ( + "FoodProcessing_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("FoodProcessing_id", ontology_types_id), + FOREIGN KEY("FoodProcessing_id") REFERENCES "FoodProcessing" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "HealthcareConditionOccurrence_ontology_types" ( + "HealthcareConditionOccurrence_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("HealthcareConditionOccurrence_id", ontology_types_id), + FOREIGN KEY("HealthcareConditionOccurrence_id") REFERENCES "HealthcareConditionOccurrence" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); +CREATE TABLE "ExtractiveIndustryProduct_ontology_types" ( + "ExtractiveIndustryProduct_id" TEXT, + ontology_types_id TEXT, + PRIMARY KEY ("ExtractiveIndustryProduct_id", ontology_types_id), + FOREIGN KEY("ExtractiveIndustryProduct_id") REFERENCES "ExtractiveIndustryProduct" (id), + FOREIGN KEY(ontology_types_id) REFERENCES "Concept" (id) +); \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index c1d485e..f575cb9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -14,7 +14,7 @@ neo4j = "^5.14.1" linkml-transformer = "^0.2.2" [tool.poetry.group.dev.dependencies] -linkml = "^1.6.10" +linkml = "^1.7.6" schema-automator = "^0.4.0" [tool.poetry-dynamic-versioning] diff --git a/src/data/examples/valid/Collection-ExtractiveIndustries-001.yaml b/src/data/examples/valid/Collection-ExtractiveIndustries-001.yaml new file mode 100644 index 0000000..27c1d68 --- /dev/null +++ b/src/data/examples/valid/Collection-ExtractiveIndustries-001.yaml @@ -0,0 +1,92 @@ +members: +- id: XF001 + name: Example Coal Mine + type: MiningFacility + facility_type: MINING_FACILITY + mining_method: UNDERGROUND + operator: ORG001 + products: + - id: PROD001 + type: ExtractiveIndustryProduct + product_type: COAL + grade: + value: 0.7 + unit: PERCENT + processing_method: PM001 + production_capacity: + value: 5000000 + unit: TONS_PER_YEAR + annual_production: + value: 4500000 + unit: TONS + reserves: + value: 500000000 + unit: TONS + depth: + value: 500 + unit: METERS + area: + value: 10000 + unit: SQUARE_METERS + located_at_place: LOC001 + +- id: XF002 + name: Example Oil Well + type: WellFacility + facility_type: WELL_FACILITY + well_type: OIL + operator: ORG002 + products: + - id: PROD002 + type: ExtractiveIndustryProduct + product_type: OIL + grade: + value: 0.85 + unit: SPECIFIC_GRAVITY + processing_method: PM002 + production_capacity: + value: 100000 + unit: BARRELS_PER_DAY + annual_production: + value: 30000000 + unit: BARRELS + reserves: + value: 1000000000 + unit: BARRELS + depth: + value: 2000 + unit: METERS + located_at_place: LOC002 + +- id: LOC001 + name: Example Location + type: Place + geolocation: + latitude: 37.7749 + longitude: -122.4194 + +- id: LOC002 + name: Example Location + type: Place + geolocation: + latitude: 31.9686 + longitude: -99.9018 + +- id: LOC003 + name: Example Location + type: Place + geolocation: + latitude: 33.7490 + longitude: -84.3880 + +- id: ORG001 + name: Example Mining Company + type: Organization + +- id: ORG002 + name: Example Oil Company + type: Organization + +- id: ORG003 + name: Example Aggregates Company + type: Organization \ No newline at end of file diff --git a/src/data/examples/valid/Collection-PowerPlant-001.yaml b/src/data/examples/valid/Collection-PowerPlant-001.yaml new file mode 100644 index 0000000..f9fb1ce --- /dev/null +++ b/src/data/examples/valid/Collection-PowerPlant-001.yaml @@ -0,0 +1,118 @@ +members: +- id: ppl:LocationA + name: Location A + type: Place + geolocation: + latitude: 40.7128 + longitude: -74.0060 +- id: ppl:PlantA + name: Power Plant A + type: FossilFuelPlant + plant_type: COAL + location: ppl:LocationA + operator: ppl:OperatorX + capacity: + value: 500 + unit: MW + commissioning_date: '1980-01-01' + capex: + value: 1000000000 + unit: USD + opex: + value: 50000000 + unit: USD + +- id: ppl:LocationB + name: Location B + type: Place + geolocation: + latitude: 35.6762 + longitude: 139.6503 +- id: ppl:PlantB + name: Power Plant B + type: FossilFuelPlant + plant_type: NATURAL_GAS + location: ppl:LocationB + operator: ppl:OperatorY + capacity: + value: 750 + unit: MW + commissioning_date: '1995-06-15' + capex: + value: 1500000000 + unit: USD + opex: + value: 60000000 + unit: USD + +- id: ppl:LocationC + name: Location C + type: Place + geolocation: + latitude: 48.8566 + longitude: 2.3522 +- id: ppl:PlantC + name: Power Plant C + type: NuclearPlant + plant_type: NUCLEAR + location: ppl:LocationC + operator: ppl:OperatorZ + capacity: + value: 1000 + unit: MW + commissioning_date: '2010-12-01' + capex: + value: 5000000000 + unit: USD + opex: + value: 100000000 + unit: USD + +- id: ppl:LocationD + name: Location D + type: Place + geolocation: + latitude: 47.3769 + longitude: 8.5417 +- id: ppl:DamD + name: Dam D + type: Landform +- id: ppl:PlantD + name: Power Plant D + type: HydroelectricPlant + plant_type: HYDROELECTRIC + dam: ppl:DamD + location: ppl:LocationD + operator: ppl:OperatorW + capacity: + value: 200 + unit: MW + commissioning_date: '2005-03-20' + capex: + value: 800000000 + unit: USD + opex: + value: 20000000 + unit: USD + +- id: ppl:OperatorX + name: Operator X + type: Organization +- id: ppl:OperatorY + name: Operator Y + type: Organization +- id: ppl:OperatorZ + name: Operator Z + type: Organization +- id: ppl:OperatorW + name: Operator W + type: Organization + +- id: ppl:GridA + name: Electrical Grid A + type: ElectricalGrid + plants: + - ppl:PlantA + - ppl:PlantB + - ppl:PlantC + - ppl:PlantD \ No newline at end of file diff --git a/src/data/examples/valid/MiningFacility-001.yaml b/src/data/examples/valid/MiningFacility-001.yaml new file mode 100644 index 0000000..300441a --- /dev/null +++ b/src/data/examples/valid/MiningFacility-001.yaml @@ -0,0 +1,30 @@ +id: XF001 +name: Example Coal Mine +type: MiningFacility +facility_type: MINING_FACILITY +mining_method: UNDERGROUND +operator: ORG001 +products: + - id: PROD001 + type: ExtractiveIndustryProduct + product_type: COAL + grade: + value: 0.7 + unit: PERCENT + processing_method: PM001 +production_capacity: + value: 5000000 + unit: TONS_PER_YEAR +annual_production: + value: 4500000 + unit: TONS +reserves: + value: 500000000 + unit: TONS +depth: + value: 500 + unit: METERS +area: + value: 10000 + unit: SQUARE_METERS +located_at_place: LOC001 \ No newline at end of file diff --git a/src/linkml_common/datamodel/linkml_common.py b/src/linkml_common/datamodel/linkml_common.py index be78339..f4b6713 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-02-02T17:33:04 +# Generation date: 2024-04-09T19:01:35 # Schema: linkml-common # # id: https://w3id.org/linkml/linkml-common @@ -11,6 +11,7 @@ from jsonasobj2 import JsonObj, as_dict from typing import Optional, List, Union, Dict, ClassVar, Any from dataclasses import dataclass +from datetime import date, datetime from linkml_runtime.linkml_model.meta import EnumDefinition, PermissibleValue, PvFormulaOptions from linkml_runtime.utils.slot import Slot @@ -21,8 +22,8 @@ from linkml_runtime.utils.enumerations import EnumDefinitionImpl from rdflib import Namespace, URIRef from linkml_runtime.utils.curienamespace import CurieNamespace -from linkml_runtime.linkml_model.types import Date, Datetime, Decimal, Float, Integer, String, Time, Uriorcurie -from linkml_runtime.utils.metamodelcore import Decimal, URIorCURIE, XSDDate, XSDDateTime, XSDTime +from linkml_runtime.linkml_model.types import Date, Datetime, Decimal, Float, Integer, String, Time, Uri, Uriorcurie +from linkml_runtime.utils.metamodelcore import Decimal, URI, URIorCURIE, XSDDate, XSDDateTime, XSDTime metamodel_version = "1.7.0" version = None @@ -42,7 +43,7 @@ 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 = CurieNamespace('fibo', 'https://spec.edmcouncil.org/fibo/ontology/FBC') 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/') @@ -85,6 +86,22 @@ class ProcedureId(SpecificationId): pass +class BuiltEnvironmentFeatureId(NamedThingId): + pass + + +class FacilityId(BuiltEnvironmentFeatureId): + pass + + +class BuildingId(FacilityId): + pass + + +class BuiltSystemId(BuiltEnvironmentFeatureId): + pass + + class ClinicalCohortId(NamedThingId): pass @@ -101,6 +118,82 @@ class RawMaterialId(NamedThingId): pass +class EquipmentId(NamedThingId): + pass + + +class PowerPlantId(BuildingId): + pass + + +class PowerPlantTypeId(ConceptId): + pass + + +class FossilFuelPlantId(PowerPlantId): + pass + + +class NuclearPlantId(PowerPlantId): + pass + + +class RenewablePlantId(PowerPlantId): + pass + + +class HydroelectricPlantId(RenewablePlantId): + pass + + +class SolarPlantId(RenewablePlantId): + pass + + +class WindFarmId(RenewablePlantId): + pass + + +class FossilFuelId(ConceptId): + pass + + +class ElectricalGridId(BuiltSystemId): + pass + + +class ExtractiveIndustryFacilityId(FacilityId): + pass + + +class MiningFacilityId(ExtractiveIndustryFacilityId): + pass + + +class WellFacilityId(ExtractiveIndustryFacilityId): + pass + + +class QuarryFacilityId(ExtractiveIndustryFacilityId): + pass + + +class ExtractiveIndustryEquipmentId(EquipmentId): + pass + + +class ExtractiveIndustryProductId(ConceptId): + pass + + +class ExtractiveIndustryWasteId(ConceptId): + pass + + +class CurrencyConceptId(ConceptId): + pass + + class FoodRecipeId(ProcedureId): pass @@ -298,7 +391,7 @@ class NamedThing(Entity): id: Union[str, NamedThingId] = None name: Optional[str] = None type: Optional[str] = None - subtype: Optional[str] = None + classification: Optional[Union[str, ConceptId]] = None ontology_types: Optional[Union[Union[str, ConceptId], List[Union[str, ConceptId]]]] = empty_list() description: Optional[str] = None @@ -313,8 +406,8 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): self.type = str(self.class_name) - if self.subtype is not None and not isinstance(self.subtype, str): - self.subtype = str(self.subtype) + if self.classification is not None and not isinstance(self.classification, ConceptId): + self.classification = ConceptId(self.classification) if not isinstance(self.ontology_types, list): self.ontology_types = [self.ontology_types] if self.ontology_types is not None else [] @@ -519,187 +612,808 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): @dataclass -class Procedure(Specification): +class Procedure(Specification): + """ + A canonical series of actions conducted in a certain order or manner + """ + _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 + + 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) + + +@dataclass +class MathematicalOperation(YAMLRoot): + """ + Application of a mathematical operation to one or more inputs to produce one or more outputs + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["MathematicalOperation"] + class_class_curie: ClassVar[str] = "linkml_common:MathematicalOperation" + class_name: ClassVar[str] = "MathematicalOperation" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.MathematicalOperation + + inputs: Optional[Union[Union[dict, "Any"], List[Union[dict, "Any"]]]] = empty_list() + outputs: Optional[Union[Union[dict, "Any"], List[Union[dict, "Any"]]]] = empty_list() + parts: Optional[Union[Union[dict, "MathematicalOperation"], List[Union[dict, "MathematicalOperation"]]]] = empty_list() + immediate_preceding_steps: Optional[Union[Union[dict, "MathematicalOperation"], List[Union[dict, "MathematicalOperation"]]]] = empty_list() + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if not isinstance(self.parts, list): + self.parts = [self.parts] if self.parts is not None else [] + self.parts = [v if isinstance(v, MathematicalOperation) else MathematicalOperation(**as_dict(v)) for v in self.parts] + + if not isinstance(self.immediate_preceding_steps, list): + self.immediate_preceding_steps = [self.immediate_preceding_steps] if self.immediate_preceding_steps is not None else [] + self.immediate_preceding_steps = [v if isinstance(v, MathematicalOperation) else MathematicalOperation(**as_dict(v)) for v in self.immediate_preceding_steps] + + super().__post_init__(**kwargs) + + +@dataclass +class Collection(Intangible): + """ + A group of things. The collection may be heterogeneous or homogeneous. + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["Collection"] + class_class_curie: ClassVar[str] = "linkml_common:Collection" + class_name: ClassVar[str] = "Collection" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.Collection + + members: Optional[Union[Union[dict, Entity], List[Union[dict, Entity]]]] = empty_list() + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if not isinstance(self.members, list): + self.members = [self.members] if self.members is not None else [] + self.members = [v if isinstance(v, Entity) else Entity(**as_dict(v)) for v in self.members] + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +Any = Any + +@dataclass +class BuiltEnvironmentFeature(NamedThing): + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["BuiltEnvironmentFeature"] + class_class_curie: ClassVar[str] = "linkml_common:BuiltEnvironmentFeature" + class_name: ClassVar[str] = "BuiltEnvironmentFeature" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.BuiltEnvironmentFeature + + id: Union[str, BuiltEnvironmentFeatureId] = 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, BuiltEnvironmentFeatureId): + self.id = BuiltEnvironmentFeatureId(self.id) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class Facility(BuiltEnvironmentFeature): + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["Facility"] + class_class_curie: ClassVar[str] = "linkml_common:Facility" + class_name: ClassVar[str] = "Facility" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.Facility + + id: Union[str, FacilityId] = None + located_at_place: Optional[Union[str, PlaceId]] = 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, FacilityId): + self.id = FacilityId(self.id) + + if self.located_at_place is not None and not isinstance(self.located_at_place, PlaceId): + self.located_at_place = PlaceId(self.located_at_place) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class Building(Facility): + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["Building"] + class_class_curie: ClassVar[str] = "linkml_common:Building" + class_name: ClassVar[str] = "Building" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.Building + + id: Union[str, BuildingId] = None + located_at_place: Optional[Union[str, PlaceId]] = 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, BuildingId): + self.id = BuildingId(self.id) + + if self.located_at_place is not None and not isinstance(self.located_at_place, PlaceId): + self.located_at_place = PlaceId(self.located_at_place) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class BuiltSystem(BuiltEnvironmentFeature): + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["BuiltSystem"] + class_class_curie: ClassVar[str] = "linkml_common:BuiltSystem" + class_name: ClassVar[str] = "BuiltSystem" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.BuiltSystem + + id: Union[str, BuiltSystemId] = 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, BuiltSystemId): + self.id = BuiltSystemId(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"] + class_class_curie: ClassVar[str] = "linkml_common:ClinicalCohort" + class_name: ClassVar[str] = "ClinicalCohort" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.ClinicalCohort + + id: Union[str, ClinicalCohortId] = None + definition: Optional[Union[str, ClinicalCohortDefinitionId]] = 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, ClinicalCohortId): + self.id = ClinicalCohortId(self.id) + + if self.definition is not None and not isinstance(self.definition, ClinicalCohortDefinitionId): + self.definition = ClinicalCohortDefinitionId(self.definition) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class ClinicalCohortDefinition(NamedThing): + """ + A definition of a clinical cohort + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["ClinicalCohortDefinition"] + class_class_curie: ClassVar[str] = "linkml_common:ClinicalCohortDefinition" + class_name: ClassVar[str] = "ClinicalCohortDefinition" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.ClinicalCohortDefinition + + id: Union[str, ClinicalCohortDefinitionId] = 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, ClinicalCohortDefinitionId): + self.id = ClinicalCohortDefinitionId(self.id) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +class DataStructure(Intangible): + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["DataStructure"] + class_class_curie: ClassVar[str] = "linkml_common:DataStructure" + class_name: ClassVar[str] = "DataStructure" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.DataStructure + + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class EngineeringSpecification(Procedure): + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["EngineeringSpecification"] + class_class_curie: ClassVar[str] = "linkml_common:EngineeringSpecification" + class_name: ClassVar[str] = "EngineeringSpecification" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.EngineeringSpecification + + id: Union[str, EngineeringSpecificationId] = 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, EngineeringSpecificationId): + self.id = EngineeringSpecificationId(self.id) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class RawMaterial(NamedThing): + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["RawMaterial"] + class_class_curie: ClassVar[str] = "linkml_common:RawMaterial" + class_name: ClassVar[str] = "RawMaterial" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.RawMaterial + + id: Union[str, RawMaterialId] = 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, RawMaterialId): + self.id = RawMaterialId(self.id) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class Equipment(NamedThing): + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["Equipment"] + class_class_curie: ClassVar[str] = "linkml_common:Equipment" + class_name: ClassVar[str] = "Equipment" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.Equipment + + id: Union[str, EquipmentId] = 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, EquipmentId): + self.id = EquipmentId(self.id) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class PowerPlant(Building): + """ + A facility for generating electrical power + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["PowerPlant"] + class_class_curie: ClassVar[str] = "linkml_common:PowerPlant" + class_name: ClassVar[str] = "PowerPlant" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.PowerPlant + + id: Union[str, PowerPlantId] = None + plant_type: Optional[Union[str, PowerPlantTypeId]] = None + location: Optional[Union[str, PlaceId]] = None + operator: Optional[Union[str, OrganizationId]] = None + capacity: Optional[Union[dict, "SimpleQuantity"]] = None + commissioning_date: Optional[Union[str, XSDDate]] = None + decommissioning_date: Optional[Union[str, XSDDate]] = None + capex: Optional[Union[dict, "MoneyQuantity"]] = None + opex: Optional[Union[dict, "MoneyQuantity"]] = 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, PowerPlantId): + self.id = PowerPlantId(self.id) + + if self.plant_type is not None and not isinstance(self.plant_type, PowerPlantTypeId): + self.plant_type = PowerPlantTypeId(self.plant_type) + + if self.location is not None and not isinstance(self.location, PlaceId): + self.location = PlaceId(self.location) + + if self.operator is not None and not isinstance(self.operator, OrganizationId): + self.operator = OrganizationId(self.operator) + + if self.capacity is not None and not isinstance(self.capacity, SimpleQuantity): + self.capacity = SimpleQuantity(**as_dict(self.capacity)) + + if self.commissioning_date is not None and not isinstance(self.commissioning_date, XSDDate): + self.commissioning_date = XSDDate(self.commissioning_date) + + if self.decommissioning_date is not None and not isinstance(self.decommissioning_date, XSDDate): + self.decommissioning_date = XSDDate(self.decommissioning_date) + + if self.capex is not None and not isinstance(self.capex, MoneyQuantity): + self.capex = MoneyQuantity(**as_dict(self.capex)) + + if self.opex is not None and not isinstance(self.opex, MoneyQuantity): + self.opex = MoneyQuantity(**as_dict(self.opex)) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class PowerPlantType(Concept): + """ + The type of power plant + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["PowerPlantType"] + class_class_curie: ClassVar[str] = "linkml_common:PowerPlantType" + class_name: ClassVar[str] = "PowerPlantType" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.PowerPlantType + + id: Union[str, PowerPlantTypeId] = 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, PowerPlantTypeId): + self.id = PowerPlantTypeId(self.id) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class FossilFuelPlant(PowerPlant): + """ + A power plant that uses fossil fuels + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["FossilFuelPlant"] + class_class_curie: ClassVar[str] = "linkml_common:FossilFuelPlant" + class_name: ClassVar[str] = "FossilFuelPlant" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.FossilFuelPlant + + id: Union[str, FossilFuelPlantId] = None + fuel: Optional[Union[str, FossilFuelId]] = 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, FossilFuelPlantId): + self.id = FossilFuelPlantId(self.id) + + if self.fuel is not None and not isinstance(self.fuel, FossilFuelId): + self.fuel = FossilFuelId(self.fuel) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class NuclearPlant(PowerPlant): + """ + A nuclear power plant + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["NuclearPlant"] + class_class_curie: ClassVar[str] = "linkml_common:NuclearPlant" + class_name: ClassVar[str] = "NuclearPlant" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.NuclearPlant + + id: Union[str, NuclearPlantId] = 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, NuclearPlantId): + self.id = NuclearPlantId(self.id) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class RenewablePlant(PowerPlant): + """ + A power plant that uses renewable energy sources + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["RenewablePlant"] + class_class_curie: ClassVar[str] = "linkml_common:RenewablePlant" + class_name: ClassVar[str] = "RenewablePlant" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.RenewablePlant + + id: Union[str, RenewablePlantId] = 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, RenewablePlantId): + self.id = RenewablePlantId(self.id) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class HydroelectricPlant(RenewablePlant): + """ + A hydroelectric power plant + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["HydroelectricPlant"] + class_class_curie: ClassVar[str] = "linkml_common:HydroelectricPlant" + class_name: ClassVar[str] = "HydroelectricPlant" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.HydroelectricPlant + + id: Union[str, HydroelectricPlantId] = None + dam: Optional[Union[str, LandformId]] = 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, HydroelectricPlantId): + self.id = HydroelectricPlantId(self.id) + + if self.dam is not None and not isinstance(self.dam, LandformId): + self.dam = LandformId(self.dam) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class SolarPlant(RenewablePlant): + """ + A solar power plant + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["SolarPlant"] + class_class_curie: ClassVar[str] = "linkml_common:SolarPlant" + class_name: ClassVar[str] = "SolarPlant" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.SolarPlant + + id: Union[str, SolarPlantId] = 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, SolarPlantId): + self.id = SolarPlantId(self.id) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class WindFarm(RenewablePlant): + """ + A wind farm + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["WindFarm"] + class_class_curie: ClassVar[str] = "linkml_common:WindFarm" + class_name: ClassVar[str] = "WindFarm" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.WindFarm + + id: Union[str, WindFarmId] = 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, WindFarmId): + self.id = WindFarmId(self.id) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class FossilFuel(Concept): + """ + A type of fossil fuel + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["FossilFuel"] + class_class_curie: ClassVar[str] = "linkml_common:FossilFuel" + class_name: ClassVar[str] = "FossilFuel" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.FossilFuel + + id: Union[str, FossilFuelId] = 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, FossilFuelId): + self.id = FossilFuelId(self.id) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class ElectricalGrid(BuiltSystem): """ - A canonical series of actions conducted in a certain order or manner + A network of electrical transmission lines """ _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["ElectricalGrid"] + class_class_curie: ClassVar[str] = "linkml_common:ElectricalGrid" + class_name: ClassVar[str] = "ElectricalGrid" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.ElectricalGrid - id: Union[str, ProcedureId] = None + id: Union[str, ElectricalGridId] = None + plants: Optional[Union[Union[str, PowerPlantId], List[Union[str, PowerPlantId]]]] = 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, ProcedureId): - self.id = ProcedureId(self.id) + if not isinstance(self.id, ElectricalGridId): + self.id = ElectricalGridId(self.id) + + if not isinstance(self.plants, list): + self.plants = [self.plants] if self.plants is not None else [] + self.plants = [v if isinstance(v, PowerPlantId) else PowerPlantId(v) for v in self.plants] super().__post_init__(**kwargs) self.type = str(self.class_name) @dataclass -class MathematicalOperation(YAMLRoot): +class ExtractiveIndustryFacility(Facility): """ - Application of a mathematical operation to one or more inputs to produce one or more outputs + A facility where natural resources are extracted from the earth """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML_COMMON["MathematicalOperation"] - class_class_curie: ClassVar[str] = "linkml_common:MathematicalOperation" - class_name: ClassVar[str] = "MathematicalOperation" - class_model_uri: ClassVar[URIRef] = LINKML_COMMON.MathematicalOperation + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["ExtractiveIndustryFacility"] + class_class_curie: ClassVar[str] = "linkml_common:ExtractiveIndustryFacility" + class_name: ClassVar[str] = "ExtractiveIndustryFacility" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.ExtractiveIndustryFacility - inputs: Optional[Union[Union[dict, "Any"], List[Union[dict, "Any"]]]] = empty_list() - outputs: Optional[Union[Union[dict, "Any"], List[Union[dict, "Any"]]]] = empty_list() - parts: Optional[Union[Union[dict, "MathematicalOperation"], List[Union[dict, "MathematicalOperation"]]]] = empty_list() - immediate_preceding_steps: Optional[Union[Union[dict, "MathematicalOperation"], List[Union[dict, "MathematicalOperation"]]]] = empty_list() + id: Union[str, ExtractiveIndustryFacilityId] = None + facility_type: Optional[Union[str, "ExtractiveIndustryFacilityType"]] = None + operator: Optional[Union[str, OrganizationId]] = None + products: Optional[Union[Dict[Union[str, ExtractiveIndustryProductId], Union[dict, "ExtractiveIndustryProduct"]], List[Union[dict, "ExtractiveIndustryProduct"]]]] = empty_dict() + production_capacity: Optional[Union[dict, "Quantity"]] = None + annual_production: Optional[Union[dict, "Quantity"]] = None + reserves: Optional[Union[dict, "Quantity"]] = None def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): - if not isinstance(self.parts, list): - self.parts = [self.parts] if self.parts is not None else [] - self.parts = [v if isinstance(v, MathematicalOperation) else MathematicalOperation(**as_dict(v)) for v in self.parts] + if self._is_empty(self.id): + self.MissingRequiredField("id") + if not isinstance(self.id, ExtractiveIndustryFacilityId): + self.id = ExtractiveIndustryFacilityId(self.id) - if not isinstance(self.immediate_preceding_steps, list): - self.immediate_preceding_steps = [self.immediate_preceding_steps] if self.immediate_preceding_steps is not None else [] - self.immediate_preceding_steps = [v if isinstance(v, MathematicalOperation) else MathematicalOperation(**as_dict(v)) for v in self.immediate_preceding_steps] + if self.facility_type is not None and not isinstance(self.facility_type, ExtractiveIndustryFacilityType): + self.facility_type = ExtractiveIndustryFacilityType(self.facility_type) + + if self.operator is not None and not isinstance(self.operator, OrganizationId): + self.operator = OrganizationId(self.operator) + + self._normalize_inlined_as_list(slot_name="products", slot_type=ExtractiveIndustryProduct, key_name="id", keyed=True) + + if self.production_capacity is not None and not isinstance(self.production_capacity, Quantity): + self.production_capacity = Quantity(**as_dict(self.production_capacity)) + + if self.annual_production is not None and not isinstance(self.annual_production, Quantity): + self.annual_production = Quantity(**as_dict(self.annual_production)) + + if self.reserves is not None and not isinstance(self.reserves, Quantity): + self.reserves = Quantity(**as_dict(self.reserves)) super().__post_init__(**kwargs) + self.type = str(self.class_name) @dataclass -class Collection(Intangible): +class MiningFacility(ExtractiveIndustryFacility): """ - A group of things. The collection may be heterogeneous or homogeneous. + A facility where mineral resources are extracted from the earth """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML_COMMON["Collection"] - class_class_curie: ClassVar[str] = "linkml_common:Collection" - class_name: ClassVar[str] = "Collection" - class_model_uri: ClassVar[URIRef] = LINKML_COMMON.Collection + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["MiningFacility"] + class_class_curie: ClassVar[str] = "linkml_common:MiningFacility" + class_name: ClassVar[str] = "MiningFacility" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.MiningFacility - members: Optional[Union[Union[dict, Entity], List[Union[dict, Entity]]]] = empty_list() + id: Union[str, MiningFacilityId] = None + mining_method: Optional[Union[str, "MiningMethod"]] = None + depth: Optional[Union[dict, "Quantity"]] = None + area: Optional[Union[dict, "Quantity"]] = None def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): - if not isinstance(self.members, list): - self.members = [self.members] if self.members is not None else [] - self.members = [v if isinstance(v, Entity) else Entity(**as_dict(v)) for v in self.members] + if self._is_empty(self.id): + self.MissingRequiredField("id") + if not isinstance(self.id, MiningFacilityId): + self.id = MiningFacilityId(self.id) + + if self.mining_method is not None and not isinstance(self.mining_method, MiningMethod): + self.mining_method = MiningMethod(self.mining_method) + + if self.depth is not None and not isinstance(self.depth, Quantity): + self.depth = Quantity(**as_dict(self.depth)) + + if self.area is not None and not isinstance(self.area, Quantity): + self.area = Quantity(**as_dict(self.area)) super().__post_init__(**kwargs) self.type = str(self.class_name) -Any = Any - @dataclass -class ClinicalCohort(NamedThing): +class WellFacility(ExtractiveIndustryFacility): """ - A group of patients who share a common set of characteristics + A facility where fluid resources (e.g., oil, gas, water) are extracted from the earth """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML_COMMON["ClinicalCohort"] - class_class_curie: ClassVar[str] = "linkml_common:ClinicalCohort" - class_name: ClassVar[str] = "ClinicalCohort" - class_model_uri: ClassVar[URIRef] = LINKML_COMMON.ClinicalCohort + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["WellFacility"] + class_class_curie: ClassVar[str] = "linkml_common:WellFacility" + class_name: ClassVar[str] = "WellFacility" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.WellFacility - id: Union[str, ClinicalCohortId] = None - definition: Optional[Union[str, ClinicalCohortDefinitionId]] = None + id: Union[str, WellFacilityId] = None + well_type: Optional[Union[str, "WellType"]] = None + depth: Optional[Union[dict, "Quantity"]] = 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, ClinicalCohortId): - self.id = ClinicalCohortId(self.id) + if not isinstance(self.id, WellFacilityId): + self.id = WellFacilityId(self.id) - if self.definition is not None and not isinstance(self.definition, ClinicalCohortDefinitionId): - self.definition = ClinicalCohortDefinitionId(self.definition) + if self.well_type is not None and not isinstance(self.well_type, WellType): + self.well_type = WellType(self.well_type) + + if self.depth is not None and not isinstance(self.depth, Quantity): + self.depth = Quantity(**as_dict(self.depth)) super().__post_init__(**kwargs) self.type = str(self.class_name) @dataclass -class ClinicalCohortDefinition(NamedThing): +class QuarryFacility(ExtractiveIndustryFacility): """ - A definition of a clinical cohort + A facility where stone, sand, or gravel are extracted from the earth """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML_COMMON["ClinicalCohortDefinition"] - class_class_curie: ClassVar[str] = "linkml_common:ClinicalCohortDefinition" - class_name: ClassVar[str] = "ClinicalCohortDefinition" - class_model_uri: ClassVar[URIRef] = LINKML_COMMON.ClinicalCohortDefinition + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["QuarryFacility"] + class_class_curie: ClassVar[str] = "linkml_common:QuarryFacility" + class_name: ClassVar[str] = "QuarryFacility" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.QuarryFacility - id: Union[str, ClinicalCohortDefinitionId] = None + id: Union[str, QuarryFacilityId] = 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, ClinicalCohortDefinitionId): - self.id = ClinicalCohortDefinitionId(self.id) + if not isinstance(self.id, QuarryFacilityId): + self.id = QuarryFacilityId(self.id) super().__post_init__(**kwargs) self.type = str(self.class_name) -class DataStructure(Intangible): +@dataclass +class ExtractiveIndustryEquipment(Equipment): + """ + The equipment used in extractive industry operations + """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML_COMMON["DataStructure"] - class_class_curie: ClassVar[str] = "linkml_common:DataStructure" - class_name: ClassVar[str] = "DataStructure" - class_model_uri: ClassVar[URIRef] = LINKML_COMMON.DataStructure + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["ExtractiveIndustryEquipment"] + class_class_curie: ClassVar[str] = "linkml_common:ExtractiveIndustryEquipment" + class_name: ClassVar[str] = "ExtractiveIndustryEquipment" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.ExtractiveIndustryEquipment + id: Union[str, ExtractiveIndustryEquipmentId] = 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, ExtractiveIndustryEquipmentId): + self.id = ExtractiveIndustryEquipmentId(self.id) super().__post_init__(**kwargs) self.type = str(self.class_name) @dataclass -class EngineeringSpecification(Procedure): +class ExtractiveIndustryProduct(Concept): + """ + A product extracted from an extractive industry facility + """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML_COMMON["EngineeringSpecification"] - class_class_curie: ClassVar[str] = "linkml_common:EngineeringSpecification" - class_name: ClassVar[str] = "EngineeringSpecification" - class_model_uri: ClassVar[URIRef] = LINKML_COMMON.EngineeringSpecification + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["ExtractiveIndustryProduct"] + class_class_curie: ClassVar[str] = "linkml_common:ExtractiveIndustryProduct" + class_name: ClassVar[str] = "ExtractiveIndustryProduct" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.ExtractiveIndustryProduct - id: Union[str, EngineeringSpecificationId] = None + id: Union[str, ExtractiveIndustryProductId] = None + product_type: Optional[Union[str, "ExtractiveIndustryProductType"]] = None + grade: Optional[Union[dict, "SimpleQuantity"]] = None + processing_method: Optional[Union[str, EngineeringSpecificationId]] = 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, EngineeringSpecificationId): - self.id = EngineeringSpecificationId(self.id) + if not isinstance(self.id, ExtractiveIndustryProductId): + self.id = ExtractiveIndustryProductId(self.id) + + if self.product_type is not None and not isinstance(self.product_type, ExtractiveIndustryProductType): + self.product_type = ExtractiveIndustryProductType(self.product_type) + + if self.grade is not None and not isinstance(self.grade, SimpleQuantity): + self.grade = SimpleQuantity(**as_dict(self.grade)) + + if self.processing_method is not None and not isinstance(self.processing_method, EngineeringSpecificationId): + self.processing_method = EngineeringSpecificationId(self.processing_method) super().__post_init__(**kwargs) self.type = str(self.class_name) @dataclass -class RawMaterial(NamedThing): +class ExtractiveIndustryWaste(Concept): + """ + Waste material generated from extractive industry operations + """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML_COMMON["RawMaterial"] - class_class_curie: ClassVar[str] = "linkml_common:RawMaterial" - class_name: ClassVar[str] = "RawMaterial" - class_model_uri: ClassVar[URIRef] = LINKML_COMMON.RawMaterial + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["ExtractiveIndustryWaste"] + class_class_curie: ClassVar[str] = "linkml_common:ExtractiveIndustryWaste" + class_name: ClassVar[str] = "ExtractiveIndustryWaste" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.ExtractiveIndustryWaste - id: Union[str, RawMaterialId] = None + id: Union[str, ExtractiveIndustryWasteId] = 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, RawMaterialId): - self.id = RawMaterialId(self.id) + if not isinstance(self.id, ExtractiveIndustryWasteId): + self.id = ExtractiveIndustryWasteId(self.id) super().__post_init__(**kwargs) self.type = str(self.class_name) @@ -723,6 +1437,30 @@ class EnvironmentalMonitoring(EnvironmentalProcess): class_model_uri: ClassVar[URIRef] = LINKML_COMMON.EnvironmentalMonitoring +@dataclass +class CurrencyConcept(Concept): + """ + A currency + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["CurrencyConcept"] + class_class_curie: ClassVar[str] = "linkml_common:CurrencyConcept" + class_name: ClassVar[str] = "CurrencyConcept" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.CurrencyConcept + + id: Union[str, CurrencyConceptId] = 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, CurrencyConceptId): + self.id = CurrencyConceptId(self.id) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + @dataclass class FoodRecipe(Procedure): _inherited_slots: ClassVar[List[str]] = [] @@ -832,6 +1570,7 @@ class Place(NamedThing): id: Union[str, PlaceId] = None address: Optional[Union[dict, "PostalAddress"]] = None geolocation: Optional[Union[dict, "GeoPointLocation"]] = None + bounding_coordinates: Optional[Union[dict, "GeoBoxLocation"]] = None def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self._is_empty(self.id): @@ -845,6 +1584,9 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self.geolocation is not None and not isinstance(self.geolocation, GeoPointLocation): self.geolocation = GeoPointLocation(**as_dict(self.geolocation)) + if self.bounding_coordinates is not None and not isinstance(self.bounding_coordinates, GeoBoxLocation): + self.bounding_coordinates = GeoBoxLocation(**as_dict(self.bounding_coordinates)) + super().__post_init__(**kwargs) self.type = str(self.class_name) @@ -886,7 +1628,7 @@ class Landform(Place): class_model_uri: ClassVar[URIRef] = LINKML_COMMON.Landform id: Union[str, LandformId] = None - geolocation: Union[dict, "GeoPointLocation"] = None + geolocation: Optional[Union[dict, "GeoPointLocation"]] = None def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self._is_empty(self.id): @@ -894,9 +1636,7 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if not isinstance(self.id, LandformId): self.id = LandformId(self.id) - if self._is_empty(self.geolocation): - self.MissingRequiredField("geolocation") - if not isinstance(self.geolocation, GeoPointLocation): + if self.geolocation is not None and not isinstance(self.geolocation, GeoPointLocation): self.geolocation = GeoPointLocation(**as_dict(self.geolocation)) super().__post_init__(**kwargs) @@ -971,6 +1711,36 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): super().__post_init__(**kwargs) +@dataclass +class GeoBoxLocation(Location): + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["GeoBoxLocation"] + class_class_curie: ClassVar[str] = "linkml_common:GeoBoxLocation" + class_name: ClassVar[str] = "GeoBoxLocation" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.GeoBoxLocation + + west_bounding_coordinate: Optional[Decimal] = None + east_bounding_coordinate: Optional[Decimal] = None + north_bounding_coordinate: Optional[Decimal] = None + south_bounding_coordinate: Optional[Decimal] = None + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if self.west_bounding_coordinate is not None and not isinstance(self.west_bounding_coordinate, Decimal): + self.west_bounding_coordinate = Decimal(self.west_bounding_coordinate) + + if self.east_bounding_coordinate is not None and not isinstance(self.east_bounding_coordinate, Decimal): + self.east_bounding_coordinate = Decimal(self.east_bounding_coordinate) + + if self.north_bounding_coordinate is not None and not isinstance(self.north_bounding_coordinate, Decimal): + self.north_bounding_coordinate = Decimal(self.north_bounding_coordinate) + + if self.south_bounding_coordinate is not None and not isinstance(self.south_bounding_coordinate, Decimal): + self.south_bounding_coordinate = Decimal(self.south_bounding_coordinate) + + super().__post_init__(**kwargs) + + @dataclass class HealthcareSite(Place): _inherited_slots: ClassVar[List[str]] = [] @@ -1089,6 +1859,8 @@ class InvestigativeProtocol(Procedure): class_model_uri: ClassVar[URIRef] = LINKML_COMMON.InvestigativeProtocol id: Union[str, InvestigativeProtocolId] = None + protocols_io_url: Optional[Union[str, URI]] = None + classification: Optional[Union[str, ConceptId]] = None def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self._is_empty(self.id): @@ -1096,6 +1868,12 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if not isinstance(self.id, InvestigativeProtocolId): self.id = InvestigativeProtocolId(self.id) + if self.protocols_io_url is not None and not isinstance(self.protocols_io_url, URI): + self.protocols_io_url = URI(self.protocols_io_url) + + if self.classification is not None and not isinstance(self.classification, ConceptId): + self.classification = ConceptId(self.classification) + super().__post_init__(**kwargs) self.type = str(self.class_name) @@ -1110,6 +1888,7 @@ class StudyDesign(Procedure): class_model_uri: ClassVar[URIRef] = LINKML_COMMON.StudyDesign id: Union[str, StudyDesignId] = None + classification: Optional[Union[str, ConceptId]] = None def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self._is_empty(self.id): @@ -1117,6 +1896,9 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if not isinstance(self.id, StudyDesignId): self.id = StudyDesignId(self.id) + if self.classification is not None and not isinstance(self.classification, ConceptId): + self.classification = ConceptId(self.classification) + super().__post_init__(**kwargs) self.type = str(self.class_name) @@ -1266,6 +2048,32 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): self.type = str(self.class_name) +@dataclass +class MoneyQuantity(SimpleQuantity): + """ + A quantity of money + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = FHIR["MoneyQuantity"] + class_class_curie: ClassVar[str] = "fhir:MoneyQuantity" + class_name: ClassVar[str] = "MoneyQuantity" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.MoneyQuantity + + value: Optional[float] = None + unit: Optional[Union[str, CurrencyConceptId]] = None + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if self.value is not None and not isinstance(self.value, float): + self.value = float(self.value) + + if self.unit is not None and not isinstance(self.unit, CurrencyConceptId): + self.unit = CurrencyConceptId(self.unit) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + @dataclass class Ratio(Quantity): """ @@ -1456,6 +2264,9 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): @dataclass class HealthcareOrganization(Organization): + """ + An organization that provides healthcare services + """ _inherited_slots: ClassVar[List[str]] = [] class_class_uri: ClassVar[URIRef] = LINKML_COMMON["HealthcareOrganization"] @@ -1620,6 +2431,55 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): self.type = str(self.class_name) +class FinancialProduct(Service): + """ + A product or service offered by a bank whereby one may deposit, withdraw or transfer money and in some cases be + paid interest. + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["FinancialProduct"] + class_class_curie: ClassVar[str] = "linkml_common:FinancialProduct" + class_name: ClassVar[str] = "FinancialProduct" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.FinancialProduct + + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + +@dataclass +class FinancialAccount(FinancialProduct): + """ + A bank account + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML_COMMON["FinancialAccount"] + class_class_curie: ClassVar[str] = "linkml_common:FinancialAccount" + class_name: ClassVar[str] = "FinancialAccount" + class_model_uri: ClassVar[URIRef] = LINKML_COMMON.FinancialAccount + + account_number: Optional[str] = None + bank: Optional[Union[str, OrganizationId]] = None + account_holder: Optional[Union[str, PersonId]] = None + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if self.account_number is not None and not isinstance(self.account_number, str): + self.account_number = str(self.account_number) + + if self.bank is not None and not isinstance(self.bank, OrganizationId): + self.bank = OrganizationId(self.bank) + + if self.account_holder is not None and not isinstance(self.account_holder, PersonId): + self.account_holder = PersonId(self.account_holder) + + super().__post_init__(**kwargs) + self.type = str(self.class_name) + + @dataclass class Event(NamedThing): """ @@ -1677,7 +2537,7 @@ class ClinicalCohortEnrollment(Event): class_model_uri: ClassVar[URIRef] = LINKML_COMMON.ClinicalCohortEnrollment id: Union[str, ClinicalCohortEnrollmentId] = None - patient: Optional[Union[dict, "Patient"]] = None + patient: Optional[Union[dict, Patient]] = None cohort: Optional[Union[str, ClinicalCohortId]] = None def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): @@ -1727,6 +2587,9 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): @dataclass class HealthcareEncounter(Event): + """ + An interaction between a patient and one or more healthcare providers + """ _inherited_slots: ClassVar[List[str]] = [] class_class_uri: ClassVar[URIRef] = LINKML_COMMON["HealthcareEncounter"] @@ -1735,9 +2598,9 @@ class HealthcareEncounter(Event): class_model_uri: ClassVar[URIRef] = LINKML_COMMON.HealthcareEncounter id: Union[str, HealthcareEncounterId] = None - patient: Optional[Union[dict, "Patient"]] = None - provider: Optional[Union[dict, "HealthcareProvider"]] = None - subtype: Optional[Union[str, "HealthcareEncounterClassification"]] = None + patient: Optional[Union[dict, Patient]] = None + provider: Optional[Union[dict, HealthcareProvider]] = None + classification: Optional[Union[str, "HealthcareEncounterClassification"]] = None def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self._is_empty(self.id): @@ -1751,8 +2614,8 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self.provider is not None and not isinstance(self.provider, HealthcareProvider): self.provider = HealthcareProvider(**as_dict(self.provider)) - if self.subtype is not None and not isinstance(self.subtype, HealthcareEncounterClassification): - self.subtype = HealthcareEncounterClassification(self.subtype) + if self.classification is not None and not isinstance(self.classification, HealthcareEncounterClassification): + self.classification = HealthcareEncounterClassification(self.classification) super().__post_init__(**kwargs) self.type = str(self.class_name) @@ -1768,7 +2631,7 @@ class HealthcareConditionOccurrence(Event): class_model_uri: ClassVar[URIRef] = LINKML_COMMON.HealthcareConditionOccurrence id: Union[str, HealthcareConditionOccurrenceId] = None - patient: Optional[Union[dict, "Patient"]] = None + patient: Optional[Union[dict, Patient]] = None observed_during: Optional[Union[str, HealthcareEncounterId]] = None def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): @@ -2160,6 +3023,107 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): # Enumerations +class FossilFuelType(EnumDefinitionImpl): + + COAL = PermissibleValue( + text="COAL", + description="Coal") + NATURAL_GAS = PermissibleValue( + text="NATURAL_GAS", + description="Natural gas") + PETROLEUM = PermissibleValue( + text="PETROLEUM", + description="Petroleum") + + _defn = EnumDefinition( + name="FossilFuelType", + ) + +class ExtractiveIndustryFacilityType(EnumDefinitionImpl): + + MINING_FACILITY = PermissibleValue( + text="MINING_FACILITY", + description="A facility where mineral resources are extracted") + WELL_FACILITY = PermissibleValue( + text="WELL_FACILITY", + description="A facility where fluid resources are extracted") + QUARRY_FACILITY = PermissibleValue( + text="QUARRY_FACILITY", + description="A facility where stone, sand, or gravel are extracted") + + _defn = EnumDefinition( + name="ExtractiveIndustryFacilityType", + ) + +class ExtractiveIndustryProductType(EnumDefinitionImpl): + + MINERAL = PermissibleValue( + text="MINERAL", + description="A solid inorganic substance") + METAL = PermissibleValue( + text="METAL", + description="A solid metallic substance") + COAL = PermissibleValue( + text="COAL", + description="A combustible black or brownish-black sedimentary rock") + OIL = PermissibleValue( + text="OIL", + description="A liquid petroleum resource") + GAS = PermissibleValue( + text="GAS", + description="A gaseous petroleum resource") + STONE = PermissibleValue( + text="STONE", + description="A solid aggregate of minerals") + SAND = PermissibleValue( + text="SAND", + description="A granular material composed of finely divided rock and mineral particles") + GRAVEL = PermissibleValue( + text="GRAVEL", + description="A loose aggregation of rock fragments") + + _defn = EnumDefinition( + name="ExtractiveIndustryProductType", + ) + +class MiningMethod(EnumDefinitionImpl): + + UNDERGROUND = PermissibleValue( + text="UNDERGROUND", + description="Extraction occurs beneath the earth's surface") + OPEN_PIT = PermissibleValue( + text="OPEN_PIT", + description="Extraction occurs on the earth's surface") + PLACER = PermissibleValue( + text="PLACER", + description="Extraction of valuable minerals from alluvial deposits") + IN_SITU = PermissibleValue( + text="IN_SITU", + description="Extraction without removing the ore from its original location") + + _defn = EnumDefinition( + name="MiningMethod", + ) + +class WellType(EnumDefinitionImpl): + + OIL = PermissibleValue( + text="OIL", + description="A well that primarily extracts crude oil") + GAS = PermissibleValue( + text="GAS", + description="A well that primarily extracts natural gas") + WATER = PermissibleValue( + text="WATER", + description="A well that extracts water for various purposes") + INJECTION = PermissibleValue( + text="INJECTION", + description="A well used to inject fluids into underground formations") + + _defn = EnumDefinition( + name="WellType", + ) + class HealthcareEncounterClassification(EnumDefinitionImpl): _defn = EnumDefinition( @@ -2232,6 +3196,18 @@ class StudyDesignEnum(EnumDefinitionImpl): name="StudyDesignEnum", ) +class InvestigativeProtocolEnum(EnumDefinitionImpl): + + _defn = EnumDefinition( + name="InvestigativeProtocolEnum", + ) + +class SampleProcessingEnum(EnumDefinitionImpl): + + _defn = EnumDefinition( + name="SampleProcessingEnum", + ) + class HumanLanguageCodeEnum(EnumDefinitionImpl): """ An enumeration of languages @@ -2285,8 +3261,8 @@ class slots: slots.type = Slot(uri=LINKML_COMMON.type, name="type", curie=LINKML_COMMON.curie('type'), model_uri=LINKML_COMMON.type, domain=None, range=Optional[str]) -slots.subtype = Slot(uri=LINKML_COMMON.subtype, name="subtype", curie=LINKML_COMMON.curie('subtype'), - model_uri=LINKML_COMMON.subtype, domain=None, range=Optional[str]) +slots.classification = Slot(uri=LINKML_COMMON.classification, name="classification", curie=LINKML_COMMON.curie('classification'), + model_uri=LINKML_COMMON.classification, domain=None, range=Optional[Union[str, ConceptId]]) slots.ontology_types = Slot(uri=LINKML_COMMON.ontology_types, name="ontology_types", curie=LINKML_COMMON.curie('ontology_types'), model_uri=LINKML_COMMON.ontology_types, domain=None, range=Optional[Union[Union[str, ConceptId], List[Union[str, ConceptId]]]]) @@ -2300,12 +3276,18 @@ class slots: slots.object = Slot(uri=RDF.object, name="object", curie=RDF.curie('object'), model_uri=LINKML_COMMON.object, domain=None, range=Optional[Union[dict, Any]]) +slots.located_at_place = Slot(uri=LINKML_COMMON.located_at_place, name="located_at_place", curie=LINKML_COMMON.curie('located_at_place'), + model_uri=LINKML_COMMON.located_at_place, domain=None, range=Optional[Union[str, PlaceId]]) + slots.address = Slot(uri=LINKML_COMMON.address, name="address", curie=LINKML_COMMON.curie('address'), model_uri=LINKML_COMMON.address, domain=None, range=Optional[Union[dict, PostalAddress]]) slots.geolocation = Slot(uri=LINKML_COMMON.geolocation, name="geolocation", curie=LINKML_COMMON.curie('geolocation'), model_uri=LINKML_COMMON.geolocation, domain=None, range=Optional[Union[dict, GeoPointLocation]]) +slots.bounding_coordinates = Slot(uri=LINKML_COMMON.bounding_coordinates, name="bounding_coordinates", curie=LINKML_COMMON.curie('bounding_coordinates'), + model_uri=LINKML_COMMON.bounding_coordinates, domain=None, range=Optional[Union[dict, GeoBoxLocation]]) + slots.primary_email = Slot(uri=SCHEMA.email, name="primary_email", curie=SCHEMA.curie('email'), model_uri=LINKML_COMMON.primary_email, domain=None, range=Optional[str]) @@ -2381,6 +3363,96 @@ class slots: slots.engineeringProcess__part_of = Slot(uri=LINKML_COMMON.part_of, name="engineeringProcess__part_of", curie=LINKML_COMMON.curie('part_of'), model_uri=LINKML_COMMON.engineeringProcess__part_of, domain=None, range=Optional[Union[str, EngineeringProcessId]]) +slots.powerPlant__plant_type = Slot(uri=LINKML_COMMON.plant_type, name="powerPlant__plant_type", curie=LINKML_COMMON.curie('plant_type'), + model_uri=LINKML_COMMON.powerPlant__plant_type, domain=None, range=Optional[Union[str, PowerPlantTypeId]]) + +slots.powerPlant__location = Slot(uri=LINKML_COMMON.location, name="powerPlant__location", curie=LINKML_COMMON.curie('location'), + model_uri=LINKML_COMMON.powerPlant__location, domain=None, range=Optional[Union[str, PlaceId]]) + +slots.powerPlant__operator = Slot(uri=LINKML_COMMON.operator, name="powerPlant__operator", curie=LINKML_COMMON.curie('operator'), + model_uri=LINKML_COMMON.powerPlant__operator, domain=None, range=Optional[Union[str, OrganizationId]]) + +slots.powerPlant__capacity = Slot(uri=LINKML_COMMON.capacity, name="powerPlant__capacity", curie=LINKML_COMMON.curie('capacity'), + model_uri=LINKML_COMMON.powerPlant__capacity, domain=None, range=Optional[Union[dict, SimpleQuantity]]) + +slots.powerPlant__commissioning_date = Slot(uri=LINKML_COMMON.commissioning_date, name="powerPlant__commissioning_date", curie=LINKML_COMMON.curie('commissioning_date'), + model_uri=LINKML_COMMON.powerPlant__commissioning_date, domain=None, range=Optional[Union[str, XSDDate]]) + +slots.powerPlant__decommissioning_date = Slot(uri=LINKML_COMMON.decommissioning_date, name="powerPlant__decommissioning_date", curie=LINKML_COMMON.curie('decommissioning_date'), + model_uri=LINKML_COMMON.powerPlant__decommissioning_date, domain=None, range=Optional[Union[str, XSDDate]]) + +slots.powerPlant__capex = Slot(uri=LINKML_COMMON.capex, name="powerPlant__capex", curie=LINKML_COMMON.curie('capex'), + model_uri=LINKML_COMMON.powerPlant__capex, domain=None, range=Optional[Union[dict, MoneyQuantity]]) + +slots.powerPlant__opex = Slot(uri=LINKML_COMMON.opex, name="powerPlant__opex", curie=LINKML_COMMON.curie('opex'), + model_uri=LINKML_COMMON.powerPlant__opex, domain=None, range=Optional[Union[dict, MoneyQuantity]]) + +slots.fossilFuelPlant__fuel = Slot(uri=LINKML_COMMON.fuel, name="fossilFuelPlant__fuel", curie=LINKML_COMMON.curie('fuel'), + model_uri=LINKML_COMMON.fossilFuelPlant__fuel, domain=None, range=Optional[Union[str, FossilFuelId]]) + +slots.hydroelectricPlant__dam = Slot(uri=LINKML_COMMON.dam, name="hydroelectricPlant__dam", curie=LINKML_COMMON.curie('dam'), + model_uri=LINKML_COMMON.hydroelectricPlant__dam, domain=None, range=Optional[Union[str, LandformId]]) + +slots.electricalGrid__plants = Slot(uri=LINKML_COMMON.plants, name="electricalGrid__plants", curie=LINKML_COMMON.curie('plants'), + model_uri=LINKML_COMMON.electricalGrid__plants, domain=None, range=Optional[Union[Union[str, PowerPlantId], List[Union[str, PowerPlantId]]]]) + +slots.extractiveIndustryFacility__facility_type = Slot(uri=LINKML_COMMON.facility_type, name="extractiveIndustryFacility__facility_type", curie=LINKML_COMMON.curie('facility_type'), + model_uri=LINKML_COMMON.extractiveIndustryFacility__facility_type, domain=None, range=Optional[Union[str, "ExtractiveIndustryFacilityType"]]) + +slots.extractiveIndustryFacility__operator = Slot(uri=LINKML_COMMON.operator, name="extractiveIndustryFacility__operator", curie=LINKML_COMMON.curie('operator'), + model_uri=LINKML_COMMON.extractiveIndustryFacility__operator, domain=None, range=Optional[Union[str, OrganizationId]]) + +slots.extractiveIndustryFacility__products = Slot(uri=LINKML_COMMON.products, name="extractiveIndustryFacility__products", curie=LINKML_COMMON.curie('products'), + model_uri=LINKML_COMMON.extractiveIndustryFacility__products, domain=None, range=Optional[Union[Dict[Union[str, ExtractiveIndustryProductId], Union[dict, ExtractiveIndustryProduct]], List[Union[dict, ExtractiveIndustryProduct]]]]) + +slots.extractiveIndustryFacility__production_capacity = Slot(uri=LINKML_COMMON.production_capacity, name="extractiveIndustryFacility__production_capacity", curie=LINKML_COMMON.curie('production_capacity'), + model_uri=LINKML_COMMON.extractiveIndustryFacility__production_capacity, domain=None, range=Optional[Union[dict, Quantity]]) + +slots.extractiveIndustryFacility__annual_production = Slot(uri=LINKML_COMMON.annual_production, name="extractiveIndustryFacility__annual_production", curie=LINKML_COMMON.curie('annual_production'), + model_uri=LINKML_COMMON.extractiveIndustryFacility__annual_production, domain=None, range=Optional[Union[dict, Quantity]]) + +slots.extractiveIndustryFacility__reserves = Slot(uri=LINKML_COMMON.reserves, name="extractiveIndustryFacility__reserves", curie=LINKML_COMMON.curie('reserves'), + model_uri=LINKML_COMMON.extractiveIndustryFacility__reserves, domain=None, range=Optional[Union[dict, Quantity]]) + +slots.miningFacility__mining_method = Slot(uri=LINKML_COMMON.mining_method, name="miningFacility__mining_method", curie=LINKML_COMMON.curie('mining_method'), + model_uri=LINKML_COMMON.miningFacility__mining_method, domain=None, range=Optional[Union[str, "MiningMethod"]]) + +slots.miningFacility__depth = Slot(uri=LINKML_COMMON.depth, name="miningFacility__depth", curie=LINKML_COMMON.curie('depth'), + model_uri=LINKML_COMMON.miningFacility__depth, domain=None, range=Optional[Union[dict, Quantity]]) + +slots.miningFacility__area = Slot(uri=LINKML_COMMON.area, name="miningFacility__area", curie=LINKML_COMMON.curie('area'), + model_uri=LINKML_COMMON.miningFacility__area, domain=None, range=Optional[Union[dict, Quantity]]) + +slots.wellFacility__well_type = Slot(uri=LINKML_COMMON.well_type, name="wellFacility__well_type", curie=LINKML_COMMON.curie('well_type'), + model_uri=LINKML_COMMON.wellFacility__well_type, domain=None, range=Optional[Union[str, "WellType"]]) + +slots.wellFacility__depth = Slot(uri=LINKML_COMMON.depth, name="wellFacility__depth", curie=LINKML_COMMON.curie('depth'), + model_uri=LINKML_COMMON.wellFacility__depth, domain=None, range=Optional[Union[dict, Quantity]]) + +slots.extractiveIndustryProduct__product_type = Slot(uri=LINKML_COMMON.product_type, name="extractiveIndustryProduct__product_type", curie=LINKML_COMMON.curie('product_type'), + model_uri=LINKML_COMMON.extractiveIndustryProduct__product_type, domain=None, range=Optional[Union[str, "ExtractiveIndustryProductType"]]) + +slots.extractiveIndustryProduct__grade = Slot(uri=LINKML_COMMON.grade, name="extractiveIndustryProduct__grade", curie=LINKML_COMMON.curie('grade'), + model_uri=LINKML_COMMON.extractiveIndustryProduct__grade, domain=None, range=Optional[Union[dict, SimpleQuantity]]) + +slots.extractiveIndustryProduct__processing_method = Slot(uri=LINKML_COMMON.processing_method, name="extractiveIndustryProduct__processing_method", curie=LINKML_COMMON.curie('processing_method'), + model_uri=LINKML_COMMON.extractiveIndustryProduct__processing_method, domain=None, range=Optional[Union[str, EngineeringSpecificationId]]) + +slots.moneyQuantity__value = Slot(uri=LINKML_COMMON.value, name="moneyQuantity__value", curie=LINKML_COMMON.curie('value'), + model_uri=LINKML_COMMON.moneyQuantity__value, domain=None, range=Optional[float]) + +slots.moneyQuantity__unit = Slot(uri=LINKML_COMMON.unit, name="moneyQuantity__unit", curie=LINKML_COMMON.curie('unit'), + model_uri=LINKML_COMMON.moneyQuantity__unit, domain=None, range=Optional[Union[str, CurrencyConceptId]]) + +slots.financialAccount__account_number = Slot(uri=LINKML_COMMON.account_number, name="financialAccount__account_number", curie=LINKML_COMMON.curie('account_number'), + model_uri=LINKML_COMMON.financialAccount__account_number, domain=None, range=Optional[str]) + +slots.financialAccount__bank = Slot(uri=LINKML_COMMON.bank, name="financialAccount__bank", curie=LINKML_COMMON.curie('bank'), + model_uri=LINKML_COMMON.financialAccount__bank, domain=None, range=Optional[Union[str, OrganizationId]]) + +slots.financialAccount__account_holder = Slot(uri=LINKML_COMMON.account_holder, name="financialAccount__account_holder", curie=LINKML_COMMON.curie('account_holder'), + model_uri=LINKML_COMMON.financialAccount__account_holder, domain=None, range=Optional[Union[str, PersonId]]) + slots.foodRecipe__ingredients = Slot(uri=LINKML_COMMON.ingredients, name="foodRecipe__ingredients", curie=LINKML_COMMON.curie('ingredients'), model_uri=LINKML_COMMON.foodRecipe__ingredients, domain=None, range=Optional[Union[Union[dict, FoodIngredient], List[Union[dict, FoodIngredient]]]]) @@ -2414,6 +3486,18 @@ class slots: slots.geoPointLocation__altitude = Slot(uri=LINKML_COMMON.altitude, name="geoPointLocation__altitude", curie=LINKML_COMMON.curie('altitude'), model_uri=LINKML_COMMON.geoPointLocation__altitude, domain=None, range=Optional[Decimal]) +slots.geoBoxLocation__west_bounding_coordinate = Slot(uri=LINKML_COMMON.west_bounding_coordinate, name="geoBoxLocation__west_bounding_coordinate", curie=LINKML_COMMON.curie('west_bounding_coordinate'), + model_uri=LINKML_COMMON.geoBoxLocation__west_bounding_coordinate, domain=None, range=Optional[Decimal]) + +slots.geoBoxLocation__east_bounding_coordinate = Slot(uri=LINKML_COMMON.east_bounding_coordinate, name="geoBoxLocation__east_bounding_coordinate", curie=LINKML_COMMON.curie('east_bounding_coordinate'), + model_uri=LINKML_COMMON.geoBoxLocation__east_bounding_coordinate, domain=None, range=Optional[Decimal]) + +slots.geoBoxLocation__north_bounding_coordinate = Slot(uri=LINKML_COMMON.north_bounding_coordinate, name="geoBoxLocation__north_bounding_coordinate", curie=LINKML_COMMON.curie('north_bounding_coordinate'), + model_uri=LINKML_COMMON.geoBoxLocation__north_bounding_coordinate, domain=None, range=Optional[Decimal]) + +slots.geoBoxLocation__south_bounding_coordinate = Slot(uri=LINKML_COMMON.south_bounding_coordinate, name="geoBoxLocation__south_bounding_coordinate", curie=LINKML_COMMON.curie('south_bounding_coordinate'), + model_uri=LINKML_COMMON.geoBoxLocation__south_bounding_coordinate, domain=None, range=Optional[Decimal]) + slots.healthcareEncounter__patient = Slot(uri=LINKML_COMMON.patient, name="healthcareEncounter__patient", curie=LINKML_COMMON.curie('patient'), model_uri=LINKML_COMMON.healthcareEncounter__patient, domain=None, range=Optional[Union[dict, Patient]]) @@ -2441,6 +3525,9 @@ class slots: 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.investigativeProtocol__protocols_io_url = Slot(uri=LINKML_COMMON.protocols_io_url, name="investigativeProtocol__protocols_io_url", curie=LINKML_COMMON.curie('protocols_io_url'), + model_uri=LINKML_COMMON.investigativeProtocol__protocols_io_url, domain=None, range=Optional[Union[str, URI]]) + 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]]) @@ -2517,10 +3604,16 @@ class slots: model_uri=LINKML_COMMON.plannedProcess__uses_physical_device, domain=None, range=Optional[Union[str, PhysicalDeviceId]]) slots.Landform_geolocation = Slot(uri=LINKML_COMMON.geolocation, name="Landform_geolocation", curie=LINKML_COMMON.curie('geolocation'), - model_uri=LINKML_COMMON.Landform_geolocation, domain=Landform, range=Union[dict, "GeoPointLocation"]) + model_uri=LINKML_COMMON.Landform_geolocation, domain=Landform, range=Optional[Union[dict, "GeoPointLocation"]]) + +slots.HealthcareEncounter_classification = Slot(uri=LINKML_COMMON.classification, name="HealthcareEncounter_classification", curie=LINKML_COMMON.curie('classification'), + model_uri=LINKML_COMMON.HealthcareEncounter_classification, domain=HealthcareEncounter, range=Optional[Union[str, "HealthcareEncounterClassification"]]) + +slots.InvestigativeProtocol_classification = Slot(uri=LINKML_COMMON.classification, name="InvestigativeProtocol_classification", curie=LINKML_COMMON.curie('classification'), + model_uri=LINKML_COMMON.InvestigativeProtocol_classification, domain=InvestigativeProtocol, range=Optional[Union[str, ConceptId]]) -slots.HealthcareEncounter_subtype = Slot(uri=LINKML_COMMON.subtype, name="HealthcareEncounter_subtype", curie=LINKML_COMMON.curie('subtype'), - model_uri=LINKML_COMMON.HealthcareEncounter_subtype, domain=HealthcareEncounter, range=Optional[Union[str, "HealthcareEncounterClassification"]]) +slots.StudyDesign_classification = Slot(uri=LINKML_COMMON.classification, name="StudyDesign_classification", curie=LINKML_COMMON.curie('classification'), + model_uri=LINKML_COMMON.StudyDesign_classification, domain=StudyDesign, range=Optional[Union[str, ConceptId]]) slots.UnitConversionOperation_inputs = Slot(uri=LINKML_COMMON.inputs, name="UnitConversionOperation_inputs", curie=LINKML_COMMON.curie('inputs'), model_uri=LINKML_COMMON.UnitConversionOperation_inputs, domain=UnitConversionOperation, range=Optional[Union[Union[dict, Quantity], List[Union[dict, Quantity]]]]) diff --git a/src/linkml_common/schema/bibliographic.yaml b/src/linkml_common/schema/bibliographic.yaml index e98060d..f098dfc 100644 --- a/src/linkml_common/schema/bibliographic.yaml +++ b/src/linkml_common/schema/bibliographic.yaml @@ -1,6 +1,6 @@ -id: https://w3id.org/linkml-common/financial -name: linkml-common-financial -title: linkml-common-financial +id: https://w3id.org/linkml-common/bibliographic +name: linkml-common-bibliographic +title: linkml-common-bibliographic description: |- Common Data Model Elements: Bibliographic and Publishing Data license: MIT diff --git a/src/linkml_common/schema/civilengineering.yaml b/src/linkml_common/schema/civilengineering.yaml new file mode 100644 index 0000000..c61c89a --- /dev/null +++ b/src/linkml_common/schema/civilengineering.yaml @@ -0,0 +1,45 @@ +id: https://w3id.org/linkml-common/civilengineering +name: linkml-common-civil-engineering +title: linkml-common-civil-engineering +description: |- + LinkML Common module for representing data modeling elements in the domain of civil engineering +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/ + OBI: http://purl.obolibrary.org/obo/OBI_ + fhir: http://hl7.org/fhir/ +default_prefix: linkml_common +default_range: string + +imports: + - linkml:types + - measurements + - geography + - engineering + +classes: + + BuiltEnvironmentFeature: + is_a: NamedThing + + Facility: + is_a: BuiltEnvironmentFeature + slots: + - located_at_place + + Building: + is_a: Facility + slots: + - located_at_place + + BuiltSystem: + is_a: BuiltEnvironmentFeature + + + diff --git a/src/linkml_common/schema/core.yaml b/src/linkml_common/schema/core.yaml index 1b79158..8f25228 100644 --- a/src/linkml_common/schema/core.yaml +++ b/src/linkml_common/schema/core.yaml @@ -17,6 +17,8 @@ prefixes: 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# + dcterms: http://purl.org/dc/terms/ + bibo: http://purl.org/ontology/bibo/ default_prefix: linkml_common default_range: string @@ -40,7 +42,7 @@ classes: - id - name - type - - subtype + - classification - ontology_types - description @@ -154,10 +156,14 @@ slots: type: range: string designates_type: true - description: A type for a thing - subtype: - range: string - description: An enum with a more specific type + description: A type for a thing. The range of this should be a class within the schema. + It is intended for schema-based classification. Anything beneath the shoreline of the + schema should use `classification`. + classification: + range: Concept + description: A precise classification of the thing, using a concept from an ontology, + controlled vocabulary, thesaurus, or taxonomy. Some schema classes may choose to restrict + the range of values which this slot can take, using `values_from`, or bindings. ontology_types: range: Concept multivalued: true diff --git a/src/linkml_common/schema/energytechnology.yaml b/src/linkml_common/schema/energytechnology.yaml new file mode 100644 index 0000000..a5b3ccd --- /dev/null +++ b/src/linkml_common/schema/energytechnology.yaml @@ -0,0 +1,103 @@ +id: https://w3id.org/linkml-common/energytechnology +name: energytechnology +title: Energy Technology Model +description: A data model for representing energy technology +license: MIT +prefixes: + linkml_common: https://w3id.org/linkml-common/ + linkml: https://w3id.org/linkml/ +default_prefix: linkml_common +default_range: string + +imports: + - linkml:types + - core + - geography + - quantities + - engineering + - civilengineering + - social + - financial + +classes: + + PowerPlant: + is_a: Building + description: A facility for generating electrical power + attributes: + plant_type: + range: PowerPlantType + location: + range: Place + operator: + range: Organization + capacity: + range: SimpleQuantity + commissioning_date: + range: date + decommissioning_date: + range: date + capex: + range: MoneyQuantity + description: Capital expenditure for the plant + opex: + range: MoneyQuantity + description: Operating expense for the plant + + PowerPlantType: + is_a: Concept + description: The type of power plant + + FossilFuelPlant: + is_a: PowerPlant + description: A power plant that uses fossil fuels + attributes: + fuel: + range: FossilFuel + + NuclearPlant: + is_a: PowerPlant + description: A nuclear power plant + + RenewablePlant: + is_a: PowerPlant + description: A power plant that uses renewable energy sources + + HydroelectricPlant: + is_a: RenewablePlant + description: A hydroelectric power plant + attributes: + dam: + range: Landform + description: The dam used by the hydroelectric plant + + SolarPlant: + is_a: RenewablePlant + description: A solar power plant + + WindFarm: + is_a: RenewablePlant + description: A wind farm + + FossilFuel: + is_a: Concept + description: A type of fossil fuel + + ElectricalGrid: + is_a: BuiltSystem + description: A network of electrical transmission lines + attributes: + plants: + range: PowerPlant + multivalued: true + +enums: + + FossilFuelType: + permissible_values: + COAL: + description: Coal + NATURAL_GAS: + description: Natural gas + PETROLEUM: + description: Petroleum \ No newline at end of file diff --git a/src/linkml_common/schema/engineering.yaml b/src/linkml_common/schema/engineering.yaml index e456005..a930317 100644 --- a/src/linkml_common/schema/engineering.yaml +++ b/src/linkml_common/schema/engineering.yaml @@ -42,3 +42,6 @@ classes: EngineeringMaterialProcessing: is_a: MaterialProcessing + Equipment: + is_a: NamedThing + diff --git a/src/linkml_common/schema/extractiveindustry.yaml b/src/linkml_common/schema/extractiveindustry.yaml new file mode 100644 index 0000000..bb4907b --- /dev/null +++ b/src/linkml_common/schema/extractiveindustry.yaml @@ -0,0 +1,121 @@ +id: https://w3id.org/linkml-common/extractiveindustry +name: linkml-common-extractiveindustry +title: linkml-common-extractiveindustry +description: |- + LinkML Common module for representing data modeling elements in the domain of extractive industry +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/ + OBI: http://purl.obolibrary.org/obo/OBI_ + fhir: http://hl7.org/fhir/ +default_prefix: linkml_common +default_range: string + +imports: + - linkml:types + - measurements + - geography + - engineering + - civilengineering + - social + +classes: + ExtractiveIndustryFacility: + is_a: Facility + description: A facility where natural resources are extracted from the earth + attributes: + facility_type: + range: ExtractiveIndustryFacilityType + operator: + range: Organization + products: + range: ExtractiveIndustryProduct + multivalued: true + inlined_as_list: true + production_capacity: + range: SimpleQuantity + annual_production: + range: SimpleQuantity + reserves: + range: SimpleQuantity + + MiningFacility: + is_a: ExtractiveIndustryFacility + description: A facility where mineral resources are extracted from the earth + attributes: + mining_method: + range: MiningMethod + depth: + range: SimpleQuantity + area: + range: SimpleQuantity + + WellFacility: + is_a: ExtractiveIndustryFacility + description: A facility where fluid resources (e.g., oil, gas, water) are extracted from the earth + attributes: + well_type: + range: WellType + depth: + range: SimpleQuantity + + QuarryFacility: + is_a: ExtractiveIndustryFacility + description: A facility where stone, sand, or gravel are extracted from the earth + + ExtractiveIndustryEquipment: + is_a: Equipment + description: The equipment used in extractive industry operations + + ExtractiveIndustryProduct: + is_a: Concept + description: A product extracted from an extractive industry facility + attributes: + product_type: + range: ExtractiveIndustryProductType + grade: + range: SimpleQuantity + processing_method: + range: EngineeringSpecification + + ExtractiveIndustryWaste: + is_a: Concept + description: Waste material generated from extractive industry operations + +enums: + ExtractiveIndustryFacilityType: + permissible_values: + MINING_FACILITY: A facility where mineral resources are extracted + WELL_FACILITY: A facility where fluid resources are extracted + QUARRY_FACILITY: A facility where stone, sand, or gravel are extracted + + ExtractiveIndustryProductType: + permissible_values: + MINERAL: A solid inorganic substance + METAL: A solid metallic substance + COAL: A combustible black or brownish-black sedimentary rock + OIL: A liquid petroleum resource + GAS: A gaseous petroleum resource + STONE: A solid aggregate of minerals + SAND: A granular material composed of finely divided rock and mineral particles + GRAVEL: A loose aggregation of rock fragments + + MiningMethod: + permissible_values: + UNDERGROUND: Extraction occurs beneath the earth's surface + OPEN_PIT: Extraction occurs on the earth's surface + PLACER: Extraction of valuable minerals from alluvial deposits + IN_SITU: Extraction without removing the ore from its original location + + WellType: + permissible_values: + OIL: A well that primarily extracts crude oil + GAS: A well that primarily extracts natural gas + WATER: A well that extracts water for various purposes + INJECTION: A well used to inject fluids into underground formations \ No newline at end of file diff --git a/src/linkml_common/schema/financial.yaml b/src/linkml_common/schema/financial.yaml index 8f31816..74e48c7 100644 --- a/src/linkml_common/schema/financial.yaml +++ b/src/linkml_common/schema/financial.yaml @@ -1,5 +1,5 @@ id: https://w3id.org/linkml-common/financial -name: linkml-common-financial +name: financial title: linkml-common-financial description: |- Common Data Model Elements @@ -21,6 +21,7 @@ default_range: string imports: - linkml:types - quantities + - social classes: @@ -28,7 +29,7 @@ classes: description: >- A quantity of money class_uri: fhir:MoneyQuantity - is_a: Quantity + is_a: SimpleQuantity attributes: value: range: float diff --git a/src/linkml_common/schema/geography.yaml b/src/linkml_common/schema/geography.yaml index a9c047e..df7e2f8 100644 --- a/src/linkml_common/schema/geography.yaml +++ b/src/linkml_common/schema/geography.yaml @@ -15,6 +15,7 @@ prefixes: ENVO: http://purl.obolibrary.org/obo/ENVO_ fhir: http://hl7.org/fhir/ omopschema: http://example.org/omop/ + wgs84: http://www.w3.org/2003/01/geo/wgs84_pos# default_prefix: linkml_common default_range: string @@ -43,7 +44,7 @@ classes: - fhir:Location slot_usage: geolocation: - required: true + recommended: true PostalAddress: class_uri: schema:PostalAddress @@ -101,6 +102,9 @@ classes: description: The southernmost coordinate of the location slots: + located_at_place: + range: Place + description: The place where the entity is located address: range: PostalAddress geolocation: diff --git a/src/linkml_common/schema/healthcare.yaml b/src/linkml_common/schema/healthcare.yaml index 0dd5222..06ca603 100644 --- a/src/linkml_common/schema/healthcare.yaml +++ b/src/linkml_common/schema/healthcare.yaml @@ -31,6 +31,7 @@ classes: - omopschema:CARE_SITE HealthcareEncounter: + description: An interaction between a patient and one or more healthcare providers is_a: Event attributes: patient: @@ -38,12 +39,13 @@ classes: provider: range: HealthcareProvider slot_usage: - subtype: + classification: range: HealthcareEncounterClassification exact_mappings: - omopschema:VISIT_OCCURRENCE HealthcareOrganization: + description: An organization that provides healthcare services is_a: Organization HealthcareRole: diff --git a/src/linkml_common/schema/investigations.yaml b/src/linkml_common/schema/investigations.yaml index a3e3ea0..7c5939f 100644 --- a/src/linkml_common/schema/investigations.yaml +++ b/src/linkml_common/schema/investigations.yaml @@ -39,9 +39,20 @@ classes: InvestigativeProtocol: is_a: Procedure + attributes: + protocols_io_url: + range: uri + slot_usage: + classification: + annotations: + recommended_value_set_bindings: linkml_common:InvestigativeProtocolEnum StudyDesign: is_a: Procedure + slot_usage: + classification: + annotations: + recommended_value_set_bindings: linkml_common:StudyDesignEnum SampleMaterial: is_a: NamedThing @@ -86,5 +97,21 @@ enums: source_nodes: - OBI:0500000 is_direct: false + relationship_types: + - rdfs:subClassOf + + InvestigativeProtocolEnum: + reachable_from: + source_nodes: + - OBI:0000272 + is_direct: false + relationship_types: + - rdfs:subClassOf + + SampleProcessingEnum: + reachable_from: + source_nodes: + - OBI:0000094 + 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 0ed535a..99e1795 100644 --- a/src/linkml_common/schema/linkml_common.yaml +++ b/src/linkml_common/schema/linkml_common.yaml @@ -22,9 +22,12 @@ imports: - core - bibliographic - datasets + - civilengineering - clinicalresearch - computational - engineering + - energytechnology + - extractiveindustry - environmental - financial - foods @@ -36,3 +39,4 @@ imports: - social - time + diff --git a/src/linkml_common/schema/patterns.yaml b/src/linkml_common/schema/patterns.yaml index 7ea2cf7..486fde5 100644 --- a/src/linkml_common/schema/patterns.yaml +++ b/src/linkml_common/schema/patterns.yaml @@ -16,40 +16,199 @@ prefixes: BFO: http://purl.obolibrary.org/obo/BFO_ fhir: http://hl7.org/fhir/ default_prefix: linkml_common -default_range: string +default_range: Any imports: - linkml:types classes: - DesignPattern: + Any: + class_uri: linkml:Any + + ModelingAbstraction: abstract: true - Composable: + GraphElementMixin: + is_a: ModelingAbstraction + mixin: true + + GraphMixin: + is_a: GraphElementMixin + mixin: true + + GraphNodeMixin: + is_a: GraphElementMixin + mixin: true + + GraphEdgeMixin: + is_a: GraphElementMixin + mixin: true + + TreeElementMixin: + is_a: ModelingAbstraction + mixin: true + + TreeMixin: + is_a: TreeElementMixin + mixin: true + + SubTreeMixin: + is_a: TreeMixin + mixin: true + + TreeNodeMixin: + is_a: TreeElementMixin + mixin: true + + DiscreteEntity: + is_a: ModelingAbstraction + + Composite: + is_a: ModelingAbstraction + mixins: + - TreeMixin description: >- A thing that can be composed of other things - attributes: + slots: + - components + slot_usage: components: - multivalued: true - range: Composable - close_mappings: - - RO:0002180 + any_of: + - range: Composite + - range: AtomicDiscreteEntity - BinaryDirectedRelationship: + SimpleComposite: + is_a: Composite + mixins: + - SubTreeMixin + description: >- + A thing that can be composed of only AtomicDiscreteEntities + slot_usage: + components: + range: AtomicDiscreteEntity + + AtomicDiscreteEntity: + is_a: DiscreteEntity + mixins: + - TreeNodeMixin + description: >- + A thing that cannot be decomposed into smaller parts, within a given system of components + + System: + is_a: Composite + mixins: + - GraphMixin + description: >- + A system is a composite entity that has connected components + slots: + - connections + slot_usage: + components: + any_of: + - range: SubSystem + - range: AtomicSystemComponent + connections: + range: SystemConnection + + SubSystem: + is_a: System + description: >- + A system that is part of a larger system + + AtomicSystemComponent: + is_a: AtomicDiscreteEntity + description: >- + A system component that cannot be decomposed into smaller parts + + SystemConnection: + is_a: BinaryDirectedRelationship + description: >- + A connection between two system components + slot_usage: + subject: + any_of: + - range: SubSystem + - range: AtomicSystemComponent + object: + any_of: + - range: SubSystem + - range: AtomicSystemComponent + + + Relationship: + is_a: ModelingAbstraction + mixins: + - GraphEdgeMixin + description: >- + A relationship between two or more entities + + BinaryRelationship: is_a: Relationship + + MultiNAryRelationship: + is_a: Relationship + + BinaryDirectedRelationship: + is_a: BinaryRelationship slots: - subject - object + StateTransitionNetworkElement: + is_a: ModelingAbstraction + description: >- + An element in a state transition network + + StateTransitionNetwork: + is_a: StateTransitionNetworkElement + mixins: + - GraphMixin + description: >- + A network of state transitions + StateTransition: - #is_a: Process + is_a: StateTransitionNetworkElement attributes: before: - range: Any - multivalued: true - description: The inputs to the operation + mixins: + - subject + range: State + description: The previous state after: - range: Any - multivalued: true - description: The outputs of the operation \ No newline at end of file + mixins: + - subject + range: State + description: The next state + conditions: + description: Conditions under which the transition occurs + + State: + is_a: StateTransitionNetworkElement + description: >- + A state in a state transition network + + +slots: + relationship_participant: + abstract: true + range: DiscreteEntity + domain: Relationship + + subject: + is_a: relationship_participant + description: >- + The subject of a relationship + + object: + is_a: relationship_participant + description: >- + The object of a relationship + + components: + multivalued: true + close_mappings: + - RO:0002180 + + connections: + multivalued: true \ No newline at end of file diff --git a/src/linkml_common/schema/social.yaml b/src/linkml_common/schema/social.yaml index a2cca18..f96d30b 100644 --- a/src/linkml_common/schema/social.yaml +++ b/src/linkml_common/schema/social.yaml @@ -23,6 +23,7 @@ default_range: string imports: - linkml:types - core + - time classes: