aboutsummaryrefslogtreecommitdiff
path: root/gn3/db
AgeCommit message (Collapse)Author
2024-09-30chore: pylint code fixJohn Nduli
2024-09-30fix: rdf and sql queries for fetching rif dataJohn Nduli
SQL queries fail because we get bytes instead of strings which cannot be decoded. We decode results from DictCursor to fix this. For RDF, we cast `?symbol` to a string.
2024-09-23Revert "Remove one-line if/else statement."Munyoki Kilyungi
This reverts commit 0d15840913c9cc401d1e74295aa5e17e34f2987b. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-23Remove one-line if/else statement.Munyoki Kilyungi
* gn3/db/rdf/wiki.py (__sanitize_result): When fetching pubmed_ids and categories, default to [] if the key misses, and remove the subsequent one-line if/else statement. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-23Use correct object modifier for a label when inserting a comment.Munyoki Kilyungi
* gn3/db/rdf/wiki.py (update_wiki_comment) [query]: Replace "rdf:label" with "rdfs:label". Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-23Update docstring for "update_wiki_comment".Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-23Use correct object modifier in triple when fetching comment history.Munyoki Kilyungi
* gn3/db/rdf/wiki.py (get_comment_history) [query]: Replace ?symbolName with ?symbolName. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-23Use correct modifier when getting species name in SPARQL.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-23Remove dead variable from RDF query.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-23Alphabetically sort the categories and pubmed_ids array.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-23Remove un-necessary triple in comment history RDF query.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-19Use correct return type.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-18Pass in insert_dict instead of payload in "get_wiki_entries".Munyoki Kilyungi
* gn3/api/metadata_api/wiki.py (edit_wiki) [insert_dict]: Add species, categories fields. [update_wiki_comment]: Pass in insert_dict, and get rid of redundant keys. Directly pass in sparql_auth's conf params instead of a dict. * gn3/db/rdf/wiki.py (get_next_comment_version): Get rid of redundant params. Use fields directly from insert_dict. Directly pass in sparql_auth's conf params instead of a dict. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-18Pass in the createtime as an arg when inserting into RDF graph.Munyoki Kilyungi
* gn3/api/metadata_api/wiki.py (edit_wiki): Pass in the createtime as an arg. * gn3/db/rdf/wiki.py: Remove un-used imports. (update_wiki_comment): Use passed in "created" arg in the createtime field. This makes sure that the SQL/RDF timestamps match. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-18Get the next versionId from SQL.Munyoki Kilyungi
* gn3/api/metadata_api/wiki.py (edit_wiki): Get the next version Id from SQL * gn3/db/rdf/wiki.py (get_next_comment_version): Delete. (update_wiki_comment): Provide the next_version id as an extra arg. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-18Add method that inserts new RIF comments.Munyoki Kilyungi
* gn3/db/rdf/wiki.py: Import datetime, update_rdf. (update_wiki_comment): New function. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-18Fetch symbol by it's name.Munyoki Kilyungi
The RDF ttl files were updated to have: comment gnt:symbol "name" . instead of: comment gnt:symbol symbolQname . * gn3/db/rdf/wiki.py (get_wiki_entries_by_symbol): Fetch symbol using it's string literal name. (get_comment_history): Ditto. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-18Fetch the next comment version in RDF.Munyoki Kilyungi
* gn3/db/rdf/wiki.py (get_next_comment_version): New function. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-18Rename sparql_construct_query -> sparql_query.Munyoki Kilyungi
* gn3/db/rdf/__init__.py (sparql_construct_query): Rename to... (sparql_query): ... this. Extend function to be able to return JSQN for SELECT queries. (query_frame_and_compact): Ditto. (query_and_compact): Ditto. (query_and_frame): Ditto. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-18Add new method for updating RDF Graph content.Munyoki Kilyungi
* gn3/db/rdf/__init__.py: Import POST, DIGEST, JSON. (update_rdf): New function. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-18Run python-black against file.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-17fix: error when result dict contains NoneJohn Nduli
2024-09-17feat: require auth for edit api callJohn Nduli
2024-09-11Update SPARQL queries to fetch from graph with a default value.Munyoki Kilyungi
This makes testing easier since tests will be run against a different graph. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-11Handle case when result is empty when sanitizing json-ld result.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-11Fix mypy errors.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-11Run python-black against file.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-11Move comment on the manual sort to the doc-string.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-11Abstract out sanitizing json-ld result into a function.Munyoki Kilyungi
* gn3/db/rdf/wiki.py (__sanitize_result): New function. (get_wiki_entries_by_symbol): Delete sanitization code. (get_comment_history): Ditto. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-11Update RDF queries to match ADR/000/gn-transform-databases.Munyoki Kilyungi
See: <https://issues.genenetwork.org/topics/ADR/gn-transform-databases/000-remodel-rif-transform-with-predicateobject-lists> for more context. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-05Update comment explaining why CONSTRUCT doesn't respect ORDER BY.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-05Correctly get categories in response.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-05Sort the RIF history data in reverse order.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-05Enforce array type to "categories" and "pmids" fields.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-05Set OPTIONAL values to default to an empty string.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-05Rename "pubmed_id" -> "pubmed_ids" to be explicit it's an array.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-05Remove type from wiki history.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-05Fix type error.Munyoki Kilyungi
* gn3/api/metadata_api/wiki.py: Remove FIXME comment. * gn3/db/wiki.py: Fix type error. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-05Add comment history.Munyoki Kilyungi
* gn3/api/metadata_api/wiki.py: Import get_comment_history. (get_history): New end-point. * gn3/db/rdf/wiki.py: (get_comment_history): New function. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-05Always output the top-level graph when compacting.Munyoki Kilyungi
This makes sure that the API is always consistent. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-05Use correct prefix when querying for email in triple.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-05Create global wiki context usable by all functions in gn3.rdf.wikiMunyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-05Add missing doc-strings to make pylint pass.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-09-05Restructure RDF module.Munyoki Kilyungi
* gn3/api/metadata.py: Import constants from gn3.db.rdf * gn3/api/metadata_api/wiki.py: Ditto. Import "get_wiki_entries_by_symbol" from gn3.db.rdf.wiki. * gn3/db/constants.py: Delete file and move all constants ... * gn3/db/rdf.py: ... and functions ... * gn3/db/rdf/__init__.py: ... here. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-08-29chore: pylint docstringJohn Nduli
2024-08-29feat: add api calls to get categories and last commentJohn Nduli
2024-08-29Remove "@id" re-map in the json-ld base context.Munyoki Kilyungi
* gn3/db/constants.py [BASE_CONTEXT]: Remove "id" key. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-08-29Fetch the latest comment by the versionId.Munyoki Kilyungi
* gn3/db/rdf.py (get_wiki_entries_by_symbol): Update query to fetch the latest query by the version. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-08-29Make fetching wiki entries by symbol case insensitive.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-08-29Add "created" to wiki return.Munyoki Kilyungi
* gn3/db/rdf.py (get_wiki_entries_by_symbol): Add "created" to dictionary. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>