Repository: pykeen/pykeen
Issue: question about data format for custom KGs
Root cause: Documentation Deficiency

Thank you for the library. My usecase is to embed relations/entities in [ConceptNet](https://github.com/commonsense/conceptnet5). The Conceptnet is not in RDF form, instead it is a csv file. So I need to convert a format compatible with PyKEEN. 
I checked your source code and found this [example](https://github.com/SmartDataAnalytics/PyKEEN/blob/master/tests/resources/example_training.tsv) Is this the data format for reading custom KGs? 
Thanks in advance.

Dear @isspek, thank you for your patience. We have just made a massive release of PyKEEN v1.0 today, and this will hopefully help you a lot!

You can check the ["bring your own data"](https://pykeen.readthedocs.io/en/v1.11.0/byo/data.html) section of the tutorial for a bit of an idea on how you can do this with our new interface. Then, the specific class that will help you load custom triples is the [`TriplesFactory`](https://pykeen.readthedocs.io/en/latest/reference/triples.html#pykeen.triples.TriplesFactory).

We're moving towards doing a documentation sprint, so any feedback you have is appreciated. I already see it's obvious we should be adding an example to this tutorial directly on adding data from a CSV file, RDF, SPARQL, etc.

Also, grüße aus Bonn :)

Dear @cthoyt, thank you so much for new update. I will check and give feedback if I have some issues. 

grüße aus Koblenz :D 

Hey guys, i couldn't find any good example yet. Is there support to load RDF graphs (from_rdflib)?

@ChrisDelClea would suggest checking the updated docs for PyKEEN 1.9 https://pykeen.readthedocs.io/en/stable/byo/data.html and especially the TriplesFactory creation functions like https://pykeen.readthedocs.io/en/stable/reference/triples.html#pykeen.triples.TriplesFactory.from_labeled_triples

Keep in mind that just because RDF is represented in triples, that you can't just consider content in that format as a meaningful knowledge graph. I'd suggest writing an appropriate SPARQL query that dumps 3-tuple objects in Python  that you can load following that tutorial

Thank you, @cthoyt. Can you can you elaborate a bit on why you think content in RDF format is not a meaningful knowledge graph? I am also trying to use NodePiece to embedd unseen nodes and get the embeddings for downstream KNN. Do you have any tutorials at hand? 

RDF often is used to model data. Consider the following scenarios:

1. A triple store that has chosen to use reified edges (i.e., where an triple is represented with a node, and predicates for the "subject", "predicate", and "object" of that triple comprise three additional triples). This wouldn't be meaningful to learn on. 
2. The RDF representing an ontology encoded in the OWL format. This has tons of relations that are only necessary to create the data structure of the ontology format, and doesn't directly model the ontology itself if you consider the triples in RDF as triples of a knowledge graph

There are several other scenarios, as well. Not to say you can't have a meaningful KG inside RDF, but that's usually not the case. What is your use case?

> Do you have any tutorials at hand?

Again I'll suggest carefully reading through the docs since most of the answers you'll want are there from the front page.

My Use-Case is Embedding a graph with persons and companies as nodes and common relations between them. Thus, i guess it would work. From the front-page, right. Thank you anyways.