Re: Serialization of JanusGraph specific types and search predicates for non-Java based languages


Jason Plurad <plu...@...>
 

I'm +1 for JanusGraph housing the client drivers, so users at least wouldn't need to hunt all over for them (unlike storage backends).


On Tuesday, April 17, 2018 at 3:24:23 AM UTC-4, Florian Hockmann wrote:
JanusGraph uses some types and predicates that are not part of TinkerPop and therefore don't have serializers and deserializers in the different TinkerPop GLVs and language drivers. This means that the following is currently only possible for Java based clients (at least to my best knowledge):
  1. Returning those types with Gremlin queries, e.g., g.V(1).outE().next().
  2. Adding data to the graph with JanusGraph specific types, like the Geoshape datatype.
  3. Using search predicates, e.g., textContains().

Now my question is whether these data types and search predicates should be supported officially by JanusGraph for the different languages or would you prefer them to be developed as third-party projects?


I could help with .NET support, but I wanted to be sure first whether such a project should be started as a PR for JanusGraph or completely independent of it.


My personal opinion is that integrating those (probably relatively small) projects within JanusGraph makes sense as we could then add sections for them to the docs and also ensure that the usage is roughly the same for the different languages. The downside is of course that the build process becomes more complex as it suddenly involves more languages like Python, JavaScript, and C#.


Join janusgraph-dev@lists.lfaidata.foundation to automatically receive all group messages.