Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rdf output adapter #338

Merged
merged 29 commits into from Apr 24, 2024
Merged

Rdf output adapter #338

merged 29 commits into from Apr 24, 2024

Conversation

slobentanzer
Copy link
Collaborator

This PR introduces an RDF output module based on rdflib

supermaxiste and others added 20 commits June 22, 2023 17:05
Bumps [pillow](https://github.com/python-pillow/Pillow) from 10.0.1 to 10.3.0.
- [Release notes](https://github.com/python-pillow/Pillow/releases)
- [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst)
- [Commits](python-pillow/Pillow@10.0.1...10.3.0)

---
updated-dependencies:
- dependency-name: pillow
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
… type relationship and that all nodes have property "id".
first version of RDF conversion
@slobentanzer
Copy link
Collaborator Author

@LoesvdBiggelaar @nilskre here is the new PR

@nilskre nilskre linked an issue Apr 19, 2024 that may be closed by this pull request
Copy link
Collaborator

@nilskre nilskre left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for addressing the feedback. @LoesvdBiggelaar
There is only one comment regarding the test left.

And one other question: How do you further process the RDF output? Do you load it into some kind of triple store / visualize it somewhere?
The context of my question is, that for the other output adapters the created Knowledge Graph can be loaded and visualized somewhere (e.g. in Neo4j or PostgreSQL). This is directly supported by BioCypher through the generated import script. I asked myself if this would somehow also be possible for RDF?

test/write/graph/test_rdf.py Outdated Show resolved Hide resolved
@LoesvdBiggelaar
Copy link
Collaborator

LoesvdBiggelaar commented Apr 22, 2024

Thanks for addressing the feedback. @LoesvdBiggelaar There is only one comment regarding the test left.

And one other question: How do you further process the RDF output? Do you load it into some kind of triple store / visualize it somewhere? The context of my question is, that for the other output adapters the created Knowledge Graph can be loaded and visualized somewhere (e.g. in Neo4j or PostgreSQL). This is directly supported by BioCypher through the generated import script. I asked myself if this would somehow also be possible for RDF?

For now you can use the ttl/xml (or other format) to load it into any application you want to use. I tested the RDFWriter by running it with the Open Targets adapter and loading the output files into GraphDB. In GraphDB I checked if I'm satisfied with my graph. I manually added other ontologies to expand my KG, which worked perfectly.
loading it in GraphDB is indeed a manual process, for now at least. I quickly looked around and saw that there is e.g. a docker image of graphDB, which could be used. I didn't check it out in detail but it looks like you can then create a pipeline similar to that of Neo4j.
I think this would indeed be a valuable next step. maybe a ticket can be created for this?

nilskre
nilskre previously approved these changes Apr 22, 2024
Copy link
Collaborator

@nilskre nilskre left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work, thanks! @LoesvdBiggelaar
@slobentanzer From my point of view this is ready to be merged.

@nilskre
Copy link
Collaborator

nilskre commented Apr 22, 2024

For now you can use the ttl/xml (or other format) to load it into any application you want to use. I tested the RDFWriter by running it with the Open Targets adapter and loading the output files into GraphDB. In GraphDB I checked if I'm satisfied with my graph. I manually added other ontologies to expand my KG, which worked perfectly.
loading it in GraphDB is indeed a manual process, for now at least. I quickly looked around and saw that there is e.g. a docker image of graphDB, which could be used. I didn't check it out in detail but it looks like you can then create a pipeline similar to that of Neo4j.

Thanks for the helpful explanation.

I think this would indeed be a valuable next step. maybe a ticket can be created for this?

Definitely, feel free to open an issue for this.

@slobentanzer
Copy link
Collaborator Author

The PR is good, I would merge, but we have a CI issue now. Opened an issue here: #342

As soon as this is resolved, we can merge. :)

@nilskre
Copy link
Collaborator

nilskre commented Apr 24, 2024

To get this merged, I have implemented a temporary CICD-Fix.

@slobentanzer
Copy link
Collaborator Author

Many thanks both, merging now. :)

@slobentanzer slobentanzer merged commit 2e77cf7 into main Apr 24, 2024
18 checks passed
@slobentanzer slobentanzer deleted the rdf branch April 24, 2024 14:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Output adapters for RDF format
4 participants