> clunky lists
Not sure what the problem is here. The nodes and relationships are represented as JSON so it's fairly easy to work with them. They also come with a pretty extensive set of list functions[0] and operators[1].Neo4j's UNWIND makes it relatively straightforward to manipulate the lists as well[2].
I'm not super familiar with RDF triplestores, but what's nice about Neo4j is that it's easy enough to use as a generalized database so you can store your knowledge graph right alongside of your entities and use it as the primary/only database.
[0] https://neo4j.com/docs/cypher-manual/current/functions/list/
[1] https://neo4j.com/docs/cypher-manual/current/syntax/operator...
[2] https://neo4j.com/docs/cypher-manual/current/clauses/unwind/...
I don't think everybody should run away from property graphs for RDF or anything, in terms of the whole package they are probably the right technical call ninety-something percent of the time. I just find Neo4J's fairly consistent mischaracterization annoying and I have a soft spot for how amazingly flexible RDF is, especially with RDF-star.
In case you want to have a look a the SPARQL client I maintain, Datao.net, you can go to the website and drop me a mail. [i really need to update the video there as the tool has evolved a lot since that time]
that kid is 7 years old already, and in my understanding currently has only one active contributor. But idea of the project is very strong.
Not just that, w.r.t. reification they gloss over the fact that neo4j has the opposite problem. Unlike RDF it is unable to cleanly represent multiple values for the same property and requires reification or clunky lists to fix it.