You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A query should be able to say how multiple property value checks combine:
Eg:
get vertices where name == "john" OR address == "111 elm street"
Also need to be able to bracket and group them: (name = "john" OR address == "111 elm street") AND active = "yes"
Multiple property value checks is easy, but figuring out how to group them in brackets in the proto api would be challenging.
Not sure how to do that.
For the proto, you can use a list of queries, and just mark if it's and or or. For example:
// A query for vertices.messageVertexQuery {
oneofquery {
RangeVertexQueryrange=1;
SpecificVertexQueryspecific=2;
PipeVertexQuerypipe=3;
PropertyPresenceVertexQueryproperty_presence=4;
PropertyValueVertexQueryproperty_value=5;
PipePropertyPresenceVertexQuerypipe_property_presence=6;
PipePropertyValueVertexQuerypipe_property_value=7;
MultiVertexQueryand=8;
MultiVertexQueryor=9;
}
}
// A list of VertexQueries to be used in a// conjunction (logical and) or a disjunction (logical or).messageMultiVertexQuery {
repeatedVertexQueryqueries=1;
}
(similar for EdgeQuery). This was just a quick PoC-- if separate wrapper types for the rust enums makes more sense, then let's do that.
Edit: right, you do need separate types for impl Into<VertexQuery>. Easy enough to do.
A query should be able to say how multiple property value checks combine:
Eg:
get vertices where
name == "john" OR address == "111 elm street"
Also need to be able to bracket and group them:
(name = "john" OR address == "111 elm street") AND active = "yes"
Multiple property value checks is easy, but figuring out how to group them in brackets in the proto api would be challenging.
Not sure how to do that.
This is somewhat related to:
#227
The text was updated successfully, but these errors were encountered: