Stardog supports both RDF and LPG. Is there any rule of thump to guide whether RDF or LPG should be chosen in Stardog? Thanks for sharing your insights and customer experiences.
Also, for this beautiful graph in the blog, what tool is used for drawing it?
Stardog does not force the user to choose between RDF and LPG. If you enable edge properties for a database, you'll be able to attach attributes to triples, much like it's done in LPG, but other than that the data remains stored in an extended RDF model (the so-called RDF*).
An interesting question then is when to enable edge properties instead of sticking to pure RDF (and managing properties using reification, named graphs, or whatever RDF design pattern you like). At this point we just say that edge properties are more convenient when i) attributes pertain to individual triples (edges) rather than sets of triples (otherwise named graphs could be a better option) and ii) attributes often need to be queried so ease of writing queries is important or iii) there are many attributes so approaches like reification have too much overhead (in terms of the number of stored triples).
The feature is currently in beta so we will probably expand on this answer in a future blog post as we hear more feedback from users and customers.
Re: the picture, it's from a development snapshot of Stardog Studio which will soon be available.
Iām a little curious about how reasoning works with edge properties. Are they treated like annotation properties and ignored by the reasoner? Can you use them in rules?
Good question. It's currently unspecified, as well as interaction with some other parts of the Knowledge Graph platform (like SHACL, for example, or GraphQL). Edge properties touch on the core data model and the query engine, so they can interact with a lot of functionality. We will work that out as we go.