linkml-store 0.3.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. linkml_store/__init__.py +7 -0
  2. linkml_store/api/__init__.py +8 -0
  3. linkml_store/api/client.py +414 -0
  4. linkml_store/api/collection.py +1280 -0
  5. linkml_store/api/config.py +187 -0
  6. linkml_store/api/database.py +862 -0
  7. linkml_store/api/queries.py +69 -0
  8. linkml_store/api/stores/__init__.py +0 -0
  9. linkml_store/api/stores/chromadb/__init__.py +7 -0
  10. linkml_store/api/stores/chromadb/chromadb_collection.py +121 -0
  11. linkml_store/api/stores/chromadb/chromadb_database.py +89 -0
  12. linkml_store/api/stores/dremio/__init__.py +10 -0
  13. linkml_store/api/stores/dremio/dremio_collection.py +555 -0
  14. linkml_store/api/stores/dremio/dremio_database.py +1052 -0
  15. linkml_store/api/stores/dremio/mappings.py +105 -0
  16. linkml_store/api/stores/dremio_rest/__init__.py +11 -0
  17. linkml_store/api/stores/dremio_rest/dremio_rest_collection.py +502 -0
  18. linkml_store/api/stores/dremio_rest/dremio_rest_database.py +1023 -0
  19. linkml_store/api/stores/duckdb/__init__.py +16 -0
  20. linkml_store/api/stores/duckdb/duckdb_collection.py +339 -0
  21. linkml_store/api/stores/duckdb/duckdb_database.py +283 -0
  22. linkml_store/api/stores/duckdb/mappings.py +8 -0
  23. linkml_store/api/stores/filesystem/__init__.py +15 -0
  24. linkml_store/api/stores/filesystem/filesystem_collection.py +186 -0
  25. linkml_store/api/stores/filesystem/filesystem_database.py +81 -0
  26. linkml_store/api/stores/hdf5/__init__.py +7 -0
  27. linkml_store/api/stores/hdf5/hdf5_collection.py +104 -0
  28. linkml_store/api/stores/hdf5/hdf5_database.py +79 -0
  29. linkml_store/api/stores/ibis/__init__.py +5 -0
  30. linkml_store/api/stores/ibis/ibis_collection.py +488 -0
  31. linkml_store/api/stores/ibis/ibis_database.py +328 -0
  32. linkml_store/api/stores/mongodb/__init__.py +25 -0
  33. linkml_store/api/stores/mongodb/mongodb_collection.py +379 -0
  34. linkml_store/api/stores/mongodb/mongodb_database.py +114 -0
  35. linkml_store/api/stores/neo4j/__init__.py +0 -0
  36. linkml_store/api/stores/neo4j/neo4j_collection.py +429 -0
  37. linkml_store/api/stores/neo4j/neo4j_database.py +154 -0
  38. linkml_store/api/stores/solr/__init__.py +3 -0
  39. linkml_store/api/stores/solr/solr_collection.py +224 -0
  40. linkml_store/api/stores/solr/solr_database.py +83 -0
  41. linkml_store/api/stores/solr/solr_utils.py +0 -0
  42. linkml_store/api/types.py +4 -0
  43. linkml_store/cli.py +1147 -0
  44. linkml_store/constants.py +7 -0
  45. linkml_store/graphs/__init__.py +0 -0
  46. linkml_store/graphs/graph_map.py +24 -0
  47. linkml_store/index/__init__.py +53 -0
  48. linkml_store/index/implementations/__init__.py +0 -0
  49. linkml_store/index/implementations/llm_indexer.py +174 -0
  50. linkml_store/index/implementations/simple_indexer.py +43 -0
  51. linkml_store/index/indexer.py +211 -0
  52. linkml_store/inference/__init__.py +13 -0
  53. linkml_store/inference/evaluation.py +195 -0
  54. linkml_store/inference/implementations/__init__.py +0 -0
  55. linkml_store/inference/implementations/llm_inference_engine.py +154 -0
  56. linkml_store/inference/implementations/rag_inference_engine.py +276 -0
  57. linkml_store/inference/implementations/rule_based_inference_engine.py +169 -0
  58. linkml_store/inference/implementations/sklearn_inference_engine.py +314 -0
  59. linkml_store/inference/inference_config.py +66 -0
  60. linkml_store/inference/inference_engine.py +209 -0
  61. linkml_store/inference/inference_engine_registry.py +74 -0
  62. linkml_store/plotting/__init__.py +5 -0
  63. linkml_store/plotting/cli.py +826 -0
  64. linkml_store/plotting/dimensionality_reduction.py +453 -0
  65. linkml_store/plotting/embedding_plot.py +489 -0
  66. linkml_store/plotting/facet_chart.py +73 -0
  67. linkml_store/plotting/heatmap.py +383 -0
  68. linkml_store/utils/__init__.py +0 -0
  69. linkml_store/utils/change_utils.py +17 -0
  70. linkml_store/utils/dat_parser.py +95 -0
  71. linkml_store/utils/embedding_matcher.py +424 -0
  72. linkml_store/utils/embedding_utils.py +299 -0
  73. linkml_store/utils/enrichment_analyzer.py +217 -0
  74. linkml_store/utils/file_utils.py +37 -0
  75. linkml_store/utils/format_utils.py +550 -0
  76. linkml_store/utils/io.py +38 -0
  77. linkml_store/utils/llm_utils.py +122 -0
  78. linkml_store/utils/mongodb_utils.py +145 -0
  79. linkml_store/utils/neo4j_utils.py +42 -0
  80. linkml_store/utils/object_utils.py +190 -0
  81. linkml_store/utils/pandas_utils.py +93 -0
  82. linkml_store/utils/patch_utils.py +126 -0
  83. linkml_store/utils/query_utils.py +89 -0
  84. linkml_store/utils/schema_utils.py +23 -0
  85. linkml_store/utils/sklearn_utils.py +193 -0
  86. linkml_store/utils/sql_utils.py +177 -0
  87. linkml_store/utils/stats_utils.py +53 -0
  88. linkml_store/utils/vector_utils.py +158 -0
  89. linkml_store/webapi/__init__.py +0 -0
  90. linkml_store/webapi/html/__init__.py +3 -0
  91. linkml_store/webapi/html/base.html.j2 +24 -0
  92. linkml_store/webapi/html/collection_details.html.j2 +15 -0
  93. linkml_store/webapi/html/database_details.html.j2 +16 -0
  94. linkml_store/webapi/html/databases.html.j2 +14 -0
  95. linkml_store/webapi/html/generic.html.j2 +43 -0
  96. linkml_store/webapi/main.py +855 -0
  97. linkml_store-0.3.0.dist-info/METADATA +226 -0
  98. linkml_store-0.3.0.dist-info/RECORD +101 -0
  99. linkml_store-0.3.0.dist-info/WHEEL +4 -0
  100. linkml_store-0.3.0.dist-info/entry_points.txt +3 -0
  101. linkml_store-0.3.0.dist-info/licenses/LICENSE +22 -0
@@ -0,0 +1,226 @@
1
+ Metadata-Version: 2.4
2
+ Name: linkml-store
3
+ Version: 0.3.0
4
+ Summary: linkml-store
5
+ Author-email: Author 1 <author@org.org>
6
+ License-Expression: MIT
7
+ License-File: LICENSE
8
+ Requires-Python: <4.0,>=3.10
9
+ Requires-Dist: click
10
+ Requires-Dist: duckdb-engine>=0.11.2
11
+ Requires-Dist: duckdb>=0.10.1
12
+ Requires-Dist: google-cloud-bigquery
13
+ Requires-Dist: jinja2>=3.1.4
14
+ Requires-Dist: jsonlines>=4.0.0
15
+ Requires-Dist: jsonpatch>=1.33
16
+ Requires-Dist: jsonpath-ng
17
+ Requires-Dist: linkml-runtime>=1.8.0
18
+ Requires-Dist: multipledispatch
19
+ Requires-Dist: pandas>=2.2.1
20
+ Requires-Dist: pydantic>=2.0.0
21
+ Requires-Dist: pymongo>=4.11
22
+ Requires-Dist: pystow>=0.5.4
23
+ Requires-Dist: python-dotenv>=1.0.1
24
+ Requires-Dist: sqlalchemy
25
+ Requires-Dist: tabulate
26
+ Requires-Dist: xmltodict>=0.13.0
27
+ Provides-Extra: all
28
+ Requires-Dist: google-cloud-bigquery; extra == 'all'
29
+ Requires-Dist: linkml-map; extra == 'all'
30
+ Requires-Dist: linkml-renderer; extra == 'all'
31
+ Requires-Dist: linkml>=1.8.0; extra == 'all'
32
+ Requires-Dist: llm; extra == 'all'
33
+ Requires-Dist: neo4j; extra == 'all'
34
+ Requires-Dist: networkx; extra == 'all'
35
+ Requires-Dist: py2neo; extra == 'all'
36
+ Requires-Dist: tiktoken; extra == 'all'
37
+ Provides-Extra: analytics
38
+ Requires-Dist: matplotlib; extra == 'analytics'
39
+ Requires-Dist: pandas; extra == 'analytics'
40
+ Requires-Dist: plotly; extra == 'analytics'
41
+ Requires-Dist: seaborn; extra == 'analytics'
42
+ Provides-Extra: app
43
+ Requires-Dist: streamlit>=1.32.2; extra == 'app'
44
+ Provides-Extra: bigquery
45
+ Requires-Dist: google-cloud-bigquery; extra == 'bigquery'
46
+ Provides-Extra: dremio
47
+ Requires-Dist: pyarrow; extra == 'dremio'
48
+ Provides-Extra: fastapi
49
+ Requires-Dist: fastapi; extra == 'fastapi'
50
+ Requires-Dist: uvicorn; extra == 'fastapi'
51
+ Provides-Extra: frictionless
52
+ Requires-Dist: frictionless; extra == 'frictionless'
53
+ Provides-Extra: h5py
54
+ Requires-Dist: h5py; extra == 'h5py'
55
+ Provides-Extra: ibis
56
+ Requires-Dist: gcsfs; extra == 'ibis'
57
+ Requires-Dist: ibis-framework[duckdb,examples]>=9.3.0; extra == 'ibis'
58
+ Requires-Dist: multipledispatch; extra == 'ibis'
59
+ Provides-Extra: llm
60
+ Requires-Dist: llm; extra == 'llm'
61
+ Requires-Dist: tiktoken; extra == 'llm'
62
+ Provides-Extra: map
63
+ Requires-Dist: linkml-map>=0.3.9; extra == 'map'
64
+ Requires-Dist: ucumvert>=0.2.0; extra == 'map'
65
+ Provides-Extra: mongodb
66
+ Requires-Dist: pymongo; extra == 'mongodb'
67
+ Provides-Extra: neo4j
68
+ Requires-Dist: neo4j; extra == 'neo4j'
69
+ Requires-Dist: networkx; extra == 'neo4j'
70
+ Requires-Dist: py2neo; extra == 'neo4j'
71
+ Provides-Extra: pyarrow
72
+ Requires-Dist: pyarrow; extra == 'pyarrow'
73
+ Provides-Extra: pyreadr
74
+ Requires-Dist: pyreadr; extra == 'pyreadr'
75
+ Provides-Extra: rdf
76
+ Requires-Dist: lightrdf; extra == 'rdf'
77
+ Provides-Extra: renderer
78
+ Requires-Dist: linkml-renderer; extra == 'renderer'
79
+ Provides-Extra: scipy
80
+ Requires-Dist: scikit-learn; extra == 'scipy'
81
+ Requires-Dist: scipy; extra == 'scipy'
82
+ Provides-Extra: tests
83
+ Requires-Dist: black>=24.0.0; extra == 'tests'
84
+ Requires-Dist: ruff>=0.6.2; extra == 'tests'
85
+ Provides-Extra: validation
86
+ Requires-Dist: linkml>=1.8.0; extra == 'validation'
87
+ Description-Content-Type: text/markdown
88
+
89
+ # linkml-store
90
+
91
+ An AI-ready data management and integration platform. LinkML-Store
92
+ provides an abstraction layer over multiple different backends
93
+ (including DuckDB, MongoDB, Neo4j, and local filesystems), allowing for
94
+ common query, index, and storage operations.
95
+
96
+ For full documentation, see [https://linkml.io/linkml-store/](https://linkml.io/linkml-store/)
97
+
98
+ See [these slides](https://docs.google.com/presentation/d/e/2PACX-1vSgtWUNUW0qNO_ZhMAGQ6fYhlXZJjBNMYT0OiZz8DDx8oj7iG9KofRs6SeaMXBBOICGknoyMG2zaHnm/embed?start=false&loop=false&delayms=3000) for a high level overview.
99
+
100
+ __Warning__ LinkML-Store is still undergoing changes and refactoring,
101
+ APIs and command line options are subject to change!
102
+
103
+ ## Quick Start
104
+
105
+ Install, add data, query it:
106
+
107
+ ```
108
+ pip install linkml-store[all]
109
+ linkml-store -d duckdb:///db/my.db -c persons insert data/*.json
110
+ linkml-store -d duckdb:///db/my.db -c persons query -w "occupation: Bricklayer"
111
+ ```
112
+
113
+ Index it, search it:
114
+
115
+ ```
116
+ linkml-store -d duckdb:///db/my.db -c persons index -t llm
117
+ linkml-store -d duckdb:///db/my.db -c persons search "all persons employed in construction"
118
+ ```
119
+
120
+ Validate it:
121
+
122
+ ```
123
+ linkml-store -d duckdb:///db/my.db -c persons validate
124
+ ```
125
+
126
+ ## Basic usage
127
+
128
+ * [Command Line](https://linkml.io/linkml-store/tutorials/Command-Line-Tutorial.html)
129
+ * [Python](https://linkml.io/linkml-store/tutorials/Python-Tutorial.html)
130
+ * API
131
+ * Streamlit applications
132
+
133
+ ## The CRUDSI pattern
134
+
135
+ Most database APIs implement the **CRUD** pattern: Create, Read, Update, Delete.
136
+ LinkML-Store adds **Search** and **Inference** to this pattern, making it **CRUDSI**.
137
+
138
+ The notion of "Search" and "Inference" is intended to be flexible and extensible,
139
+ including:
140
+
141
+ * Search
142
+ * Traditional keyword search
143
+ * Search using LLM Vector embeddings (*without* a dedicated vector database)
144
+ * Pluggable specialized search, e.g. genomic sequence (not yet implemented)
145
+ * Inference (encompassing *validation*, *repair*, and inference of missing data)
146
+ * Classic rule-based inference
147
+ * Inference using LLM Retrieval Augmented Generation (RAG)
148
+ * Statistical/ML inference
149
+
150
+ ## Features
151
+
152
+ ### Multiple Adapters
153
+
154
+ LinkML-Store is designed to work with multiple backends, giving a common abstraction layer
155
+
156
+ * [MongoDB](https://linkml.io/linkml-store/how-to/Use-MongoDB.html)
157
+ * [DuckDB](https://linkml.io/linkml-store/tutorials/Python-Tutorial.html)
158
+ * [Solr](https://linkml.io/linkml-store/how-to/Query-Solr-using-CLI.html)
159
+ * [Neo4j](https://linkml.io/linkml-store/how-to/Use-Neo4j.html)
160
+ * **Ibis** - Universal database adapter supporting DuckDB, PostgreSQL, SQLite, BigQuery, Snowflake, and many more
161
+
162
+ * Filesystem
163
+
164
+ Coming soon: any RDBMS, any triplestore, HDF5-based stores, ChromaDB/Vector dbs ...
165
+
166
+ The intent is to give a union of all features of each backend. For
167
+ example, analytic faceted queries are provided for *all* backends, not
168
+ just Solr.
169
+
170
+ ### Composable indexes
171
+
172
+ Many backends come with their own indexing and search
173
+ schemes. Classically this was Lucene-based indexes, now it is semantic
174
+ search using LLM embeddings.
175
+
176
+ LinkML store treats indexing as an orthogonal concern - you can
177
+ compose different indexing schemes with different backends. You don't
178
+ need to have a vector database to run embedding search!
179
+
180
+ See [How to Use-Semantic-Search](https://linkml.io/linkml-store/how-to/Use-Semantic-Search.html)
181
+
182
+ ### Use with LLMs
183
+
184
+ TODO - docs
185
+
186
+ ### Validation
187
+
188
+ LinkML-Store is backed by [LinkML](https://linkml.io), which allows
189
+ for powerful expressive structural and semantic constraints.
190
+
191
+ See [Indexing JSON](https://linkml.io/linkml-store/how-to/Index-Phenopackets.html)
192
+
193
+ and [Referential Integrity](https://linkml.io/linkml-store/how-to/Check-Referential-Integrity.html)
194
+
195
+ ## Web API
196
+
197
+ There is a preliminary API following HATEOAS principles implemented using FastAPI.
198
+
199
+ To start you should first create a config file, e.g. `db/conf.yaml`:
200
+
201
+ Then run:
202
+
203
+ ```
204
+ export LINKML_STORE_CONFIG=./db/conf.yaml
205
+ make api
206
+ ```
207
+
208
+ The API returns links as well as data objects, it's recommended to use a Chrome plugin for JSON viewing
209
+ for exploring the API. TODO: add docs here.
210
+
211
+ The main endpoints are:
212
+
213
+ * `http://localhost:8000/` - the root of the API
214
+ * `http://localhost:8000/pages/` - browse the API via HTML
215
+ * `http://localhost:8000/docs` - the Swagger UI
216
+
217
+ ## Streamlit app
218
+
219
+ ```
220
+ make app
221
+ ```
222
+
223
+ ## Background
224
+
225
+ See [these slides](https://docs.google.com/presentation/d/e/2PACX-1vSgtWUNUW0qNO_ZhMAGQ6fYhlXZJjBNMYT0OiZz8DDx8oj7iG9KofRs6SeaMXBBOICGknoyMG2zaHnm/embed?start=false&loop=false&delayms=3000) for more details
226
+
@@ -0,0 +1,101 @@
1
+ linkml_store/__init__.py,sha256=jlU6WOUAn8cKIhzbTULmBTWpW9gZdEt7q_RI6KZN1bY,118
2
+ linkml_store/cli.py,sha256=dN1Nm4bECujbJSeDAEcm7ZveS6ffdQxSTk_pNexez3E,45542
3
+ linkml_store/constants.py,sha256=x4ZmDsfE9rZcL5WpA93uTKrRWzCD6GodYXviVzIvR38,112
4
+ linkml_store/api/__init__.py,sha256=3CelcFEFz0y3MkQAzhQ9JxHIt1zFk6nYZxSmYTo8YZE,226
5
+ linkml_store/api/client.py,sha256=AXaGuvzuy1miW3-gm-0R5wkfuhfOlWYHKtzzjhY7Rmo,14054
6
+ linkml_store/api/collection.py,sha256=XCedJbDLEYeH48PewkozCZz3f9hTzAKv2Dsaywi8Sp8,44761
7
+ linkml_store/api/config.py,sha256=pOz210JIwkEEXtfjcsZBp1UEedkBu8RkH62Qa1b4exI,5777
8
+ linkml_store/api/database.py,sha256=rcJ6FCWLZSUb8O0rcV1x99Em4t8BXfMs3KGXiMHWoIA,31964
9
+ linkml_store/api/queries.py,sha256=pEABM3G-k52WVzbIVdkcOkVhgBDgMOGnmk50HliiXPE,2082
10
+ linkml_store/api/types.py,sha256=3aIQtDFMvsSmjuN5qrR2vNK5sHa6yzD_rEOPA6tHwvg,176
11
+ linkml_store/api/stores/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
12
+ linkml_store/api/stores/chromadb/__init__.py,sha256=e9BkOPuPnVQKA5PRKDulag59yGNHDP3U2_DnPSrFAKM,132
13
+ linkml_store/api/stores/chromadb/chromadb_collection.py,sha256=RQUZx5oeotkzNihg-dlSevkiTiKY1d9x0bS63HF80W4,4270
14
+ linkml_store/api/stores/chromadb/chromadb_database.py,sha256=dZA3LQE8-ZMhJQOzsUFyxehnKpFF7adR182aggfkaFY,3205
15
+ linkml_store/api/stores/dremio/__init__.py,sha256=VP-i3xK-8bB9AFtQuYIieBUUUwYaDlo83epZcXeupZY,377
16
+ linkml_store/api/stores/dremio/dremio_collection.py,sha256=ZBmjVBXTp-Xj-KppbT0d3pzh2JkxJxQFluft9MJBCeU,18106
17
+ linkml_store/api/stores/dremio/dremio_database.py,sha256=5UJQM-0Kj0-KDapPr-lkICgR53aLC-u7Inzdp3O2y6M,38739
18
+ linkml_store/api/stores/dremio/mappings.py,sha256=bf9mTNp062CQXRqakZye5XI49qQrK8A_W17p_OF2g-8,2867
19
+ linkml_store/api/stores/dremio_rest/__init__.py,sha256=wm3jNFq-k9_rRsZXOlHyt4dhFU6b51RvZN4u43qK7aA,489
20
+ linkml_store/api/stores/dremio_rest/dremio_rest_collection.py,sha256=8yxsNJlH82tGNb7g_qK3L79Ui8SJz04WogHKJlMWBtc,16266
21
+ linkml_store/api/stores/dremio_rest/dremio_rest_database.py,sha256=Z_KVUpS5jj71CsQipH3fUEp-8c4MkUh6-XcVlI9vJ0o,37495
22
+ linkml_store/api/stores/duckdb/__init__.py,sha256=rbQSDgNg-fdvi6-pHGYkJTST4p1qXUZBf9sFSsO3KPk,387
23
+ linkml_store/api/stores/duckdb/duckdb_collection.py,sha256=AW7YhHdegHdbcAB1Lnr1WNI9VUAxRyMd3oHMnzfsLuQ,15057
24
+ linkml_store/api/stores/duckdb/duckdb_database.py,sha256=L2tn8mKQWVjcssRpOODOOJHjIu2YRYN5xQJyaG8tBUA,11509
25
+ linkml_store/api/stores/duckdb/mappings.py,sha256=tDce3W1Apwammhf4LS6cRJ0m4NiJ0eB7vOI_4U5ETY8,148
26
+ linkml_store/api/stores/filesystem/__init__.py,sha256=rD6nsZLkMphS4EQSrGtjirYD32ENRIqv7Kllm5CLBMY,346
27
+ linkml_store/api/stores/filesystem/filesystem_collection.py,sha256=9gqY2KRZsn_RWk4eKkxFd3_wcxs5YaXvcBI7GGJBMGE,6751
28
+ linkml_store/api/stores/filesystem/filesystem_database.py,sha256=Ich707bWzgeq3tdv37wLLkM4Kb3lr4w3T1iftvbMqdw,2883
29
+ linkml_store/api/stores/hdf5/__init__.py,sha256=l4cIh3v7P0nPbwGIsfuCMD_serQ8q8c7iuUA9W2Jb4o,97
30
+ linkml_store/api/stores/hdf5/hdf5_collection.py,sha256=mnpLMYehn3PuaIjp2dXrIWu8jh-bdQ84X2Ku83jMdEY,3805
31
+ linkml_store/api/stores/hdf5/hdf5_database.py,sha256=EZbjrpaqiNDEFvoD5dZNcGBXA8z6HRNL81emueTZWNw,2714
32
+ linkml_store/api/stores/ibis/__init__.py,sha256=8Y80qhCEHCWO4JYhkGIKPSp3b60NBITYY5oGwaphhAk,134
33
+ linkml_store/api/stores/ibis/ibis_collection.py,sha256=INlRfKL_le_UUJKZuljMGC6GtkhipXB5LoyA1z8-TAM,18952
34
+ linkml_store/api/stores/ibis/ibis_database.py,sha256=RmlyKTUOjrot9SgePxAXQbzzD58BLETYyZ_vzzmp1-A,12436
35
+ linkml_store/api/stores/mongodb/__init__.py,sha256=OSFCr7RQlDEe-O-Y0P_i912oAMK-L3pC7Cnj7sxlwAk,510
36
+ linkml_store/api/stores/mongodb/mongodb_collection.py,sha256=lR18BdaVUbuJDIltuL42MnGJWyMa28XFi_x1PHb3u0M,14884
37
+ linkml_store/api/stores/mongodb/mongodb_database.py,sha256=Lr47vVaJv_cgTCc2ArEma9R5T0agR_haaCJB6BageyI,4112
38
+ linkml_store/api/stores/neo4j/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
39
+ linkml_store/api/stores/neo4j/neo4j_collection.py,sha256=a-Az5_ypdBMgeNyhrTW7q-ik-vYPCDDONIK7N_CDA9c,17449
40
+ linkml_store/api/stores/neo4j/neo4j_database.py,sha256=QN6-iSshQwTk0GWDANmSCs8b_Oqd-KI5gI90nq82HWM,5574
41
+ linkml_store/api/stores/solr/__init__.py,sha256=aAfnaN9mZOiIDj1NYz0Ll9fZF2gG7UU_vhP4SNCL2d8,36
42
+ linkml_store/api/stores/solr/solr_collection.py,sha256=ZxRVs6q3tboqpWfuV2lUeaHmO178H8q3Hf8iEPAcwLE,8957
43
+ linkml_store/api/stores/solr/solr_database.py,sha256=TFjqbY7jAkdrhAchbNg0E-mChSP7ogNwFExslbvX7Yo,2877
44
+ linkml_store/api/stores/solr/solr_utils.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
45
+ linkml_store/graphs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
46
+ linkml_store/graphs/graph_map.py,sha256=bYRxv8n1YPnFqE9d6JKNmRawb8EAhsPlHhBue0gvtZE,712
47
+ linkml_store/index/__init__.py,sha256=6SQzDe-WZSSqbGNsbCDfyPTyz0s9ISDKw1dm9xgQuT4,1396
48
+ linkml_store/index/indexer.py,sha256=xzhkQvkl8LRjA3wBpIv9jrkLC6ATK81t__w04bm5Kb0,7711
49
+ linkml_store/index/implementations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
50
+ linkml_store/index/implementations/llm_indexer.py,sha256=8fBPSDjH_z5okJSqT5Pyy92IvHeX7hYVQrrKLTx5Kzc,7500
51
+ linkml_store/index/implementations/simple_indexer.py,sha256=KnkFJtXTHnwjhD_D6ZK2rFhBID1dgCedcOVPEWAY2NU,1282
52
+ linkml_store/inference/__init__.py,sha256=b8NAFNZjOYU_8gOvxdyCyoiHOOl5Ai2ckKs1tv7ZkkY,342
53
+ linkml_store/inference/evaluation.py,sha256=YDFYaEu2QLSfFq4oyARrnKfTiPLtNF8irhhspgVDfdY,6013
54
+ linkml_store/inference/inference_config.py,sha256=bbYiWf9eYdjEDzpMK-k5AfrhyzZlotVxPLZtjnVsA5Q,2283
55
+ linkml_store/inference/inference_engine.py,sha256=r5Adx1ZOfe4eJ9XgMEYgXb9XhSDCzq7t4Sdvn4EXOUQ,7191
56
+ linkml_store/inference/inference_engine_registry.py,sha256=6o66gvBYBwdeAKm62zqqvfaBlcopVP_cla3L6uXGsHA,3015
57
+ linkml_store/inference/implementations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
58
+ linkml_store/inference/implementations/llm_inference_engine.py,sha256=qoMrzsEE5zDTHc6Y1nBQcSOYDjJETRqsZL7Zl7p3hLg,5407
59
+ linkml_store/inference/implementations/rag_inference_engine.py,sha256=xdf1WJ-e0G34Y_F4h4UzkLNF2TZjSfdNIUiYTP7xiZU,11276
60
+ linkml_store/inference/implementations/rule_based_inference_engine.py,sha256=0IEY_fsHJPJy6QKbYQU_qE87RRnPOXQxPuJKXCQG8jU,6250
61
+ linkml_store/inference/implementations/sklearn_inference_engine.py,sha256=_PiZom5i3ki9SmdqwF7SipHeLPK-Ai-vEiiuOfgNWd4,13516
62
+ linkml_store/plotting/__init__.py,sha256=8Wjpwjhtp1-Ci_B2gRVUZ8EI_hGxpuhXQPlUny5ZWC0,84
63
+ linkml_store/plotting/cli.py,sha256=qZGdHlVxVtdq-iod-RUQ9kVNMmzKZap3s875IvVKod8,34950
64
+ linkml_store/plotting/dimensionality_reduction.py,sha256=kxucUbausDbRThysR12gGf5Mh8y9hrxoXxlbfd9GB28,14762
65
+ linkml_store/plotting/embedding_plot.py,sha256=Y_UuS4sTGyF8r3Rx9Z4dra3LGkYhruQ_ysHZ-Xm9_RY,15330
66
+ linkml_store/plotting/facet_chart.py,sha256=hKypD20xjnmk6gAtO4Yn_a8_3BboUwxlD1_Udg2SLRg,2504
67
+ linkml_store/plotting/heatmap.py,sha256=n56OBzIFcnda3C5kb_H82Rw1bLgGdBFP4jY9sX6j4pI,14728
68
+ linkml_store/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
69
+ linkml_store/utils/change_utils.py,sha256=O2rvSvgTKB60reLLz9mX5OWykAA_m93bwnUh5ZWa0EY,471
70
+ linkml_store/utils/dat_parser.py,sha256=BY4QOQ5YSv6u5SIEXN5bLWCjcynBaC9Tndze0FwOP3M,3047
71
+ linkml_store/utils/embedding_matcher.py,sha256=FUZy_bhTMkWENnT7Eimr-KjNf34RVunuW2dDjVz-JoY,14626
72
+ linkml_store/utils/embedding_utils.py,sha256=l05UtC3ujub_qTzhwBk5DzRsAe_F6lMDhzpVCYTqUTA,10266
73
+ linkml_store/utils/enrichment_analyzer.py,sha256=KLVdw0zqnWKdfCiUwSuBm8f5g5gppiADIysHamMcnSg,7707
74
+ linkml_store/utils/file_utils.py,sha256=rQ7-XpmI6_Kx_dhEnI98muFRr0MmgI_kZ_9cgJBf_0I,1411
75
+ linkml_store/utils/format_utils.py,sha256=FTJzl9Owzoe4FRK5dD5uXgPdgLWN6ydYDdOQN-_JHIw,17711
76
+ linkml_store/utils/io.py,sha256=JHUrWDtlZC2jtN_PQZ4ypdGIyYlftZEN3JaCvEPs44w,884
77
+ linkml_store/utils/llm_utils.py,sha256=xfSx7m96IoQvZHY0sBMO3HeLkLAIMDXLF9VAUpYLlyE,3755
78
+ linkml_store/utils/mongodb_utils.py,sha256=Rl1YmMKs1IXwSsJIViSDChbi0Oer5cBnMmjka2TeQS8,4665
79
+ linkml_store/utils/neo4j_utils.py,sha256=y3KPmDZ8mQmePgg0lUeKkeKqzEr2rV226xxEtHc5pRg,1266
80
+ linkml_store/utils/object_utils.py,sha256=s6GIcfEODI8oALL_-ohtTlW_jwCRL48KaP1FGp4YS9M,6596
81
+ linkml_store/utils/pandas_utils.py,sha256=ttkXGCJZcNhmy72SkY4ZfKbC-lyscpI74YLKznJ8AfM,3183
82
+ linkml_store/utils/patch_utils.py,sha256=q-h_v68okyruzdPTEHCe0WubbQHKpi1qy5bJ9vFWDo8,4823
83
+ linkml_store/utils/query_utils.py,sha256=HWt46BsGWoIGiNBTtvpXGY6onPRWsQky6eu_9cYqbvo,3440
84
+ linkml_store/utils/schema_utils.py,sha256=iJiZxo5NGr7v87h4DV6V9DrDOZHSswMRuf0N4V2rVtg,646
85
+ linkml_store/utils/sklearn_utils.py,sha256=itPpcrsbbyOazdjmivaaZ1lyZeytm0a0hJ2AS8ziUgg,7590
86
+ linkml_store/utils/sql_utils.py,sha256=GF4s51BP3WmnYuBgtUiwo3uXvYX_ypyrknk4a6tIoSE,6210
87
+ linkml_store/utils/stats_utils.py,sha256=4KqBb1bqDgAmq-1fJLLu5B2paPgoZZc3A-gnyVam4bI,1799
88
+ linkml_store/utils/vector_utils.py,sha256=ZJPRWz64jHMbH5sV1CaCZAAvA_kS1gTjhjnwLRXjKT8,5354
89
+ linkml_store/webapi/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
90
+ linkml_store/webapi/main.py,sha256=B0Da575kKR7X88N9ykm99Dem8FyBAW9f-w3A_JwUzfw,29165
91
+ linkml_store/webapi/html/__init__.py,sha256=hwp5eeBJKH65Bvv1x9Z4vsT1tLSYtb9Dq4I9r1kL1q0,69
92
+ linkml_store/webapi/html/base.html.j2,sha256=hoiV2uaSxxrQp7VuAZBOHueH7czyJMYcPBRN6dZFYhk,693
93
+ linkml_store/webapi/html/collection_details.html.j2,sha256=FcCnkgtJAhfW84tVXQfAXP8eiq4BcrTeudZXQGL1Slg,385
94
+ linkml_store/webapi/html/database_details.html.j2,sha256=qtXdavbZb0mohiObI9dvJtkifAS16LAOcgv8qwtQz70,451
95
+ linkml_store/webapi/html/databases.html.j2,sha256=a9BCWQYfPeFhdUd31CWhB0yWhTIFXQayO08JgjyqKoc,294
96
+ linkml_store/webapi/html/generic.html.j2,sha256=KtLaO2HUEF2Opq-OwHKgRKetNWe8IWc6JuIkxRPsywk,1018
97
+ linkml_store-0.3.0.dist-info/METADATA,sha256=X-GO67m-w-KOIihCTrNxNyNCwHsyGENlkTp89FW3zWI,7550
98
+ linkml_store-0.3.0.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
99
+ linkml_store-0.3.0.dist-info/entry_points.txt,sha256=JdjSqGpOUBmbDaPFfLkqWi1hzSwlPxkkZxadllGlEsI,104
100
+ linkml_store-0.3.0.dist-info/licenses/LICENSE,sha256=77mDOslUnalYnuq9xQYZKtIoNEzcH9mIjvWHOKjamnE,1086
101
+ linkml_store-0.3.0.dist-info/RECORD,,
@@ -0,0 +1,4 @@
1
+ Wheel-Version: 1.0
2
+ Generator: hatchling 1.28.0
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
@@ -0,0 +1,3 @@
1
+ [console_scripts]
2
+ linkml-store = linkml_store.cli:cli
3
+ linkml-store-api = linkml_store.webapi.main:start
@@ -0,0 +1,22 @@
1
+
2
+ The MIT License (MIT)
3
+
4
+ Copyright (c) 2024 Monarch Initiative
5
+
6
+ Permission is hereby granted, free of charge, to any person obtaining a copy
7
+ of this software and associated documentation files (the "Software"), to deal
8
+ in the Software without restriction, including without limitation the rights
9
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
+ copies of the Software, and to permit persons to whom the Software is
11
+ furnished to do so, subject to the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be included in
14
+ all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22
+ THE SOFTWARE.