[ 
https://issues.apache.org/jira/browse/TINKERPOP-963?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

stephen mallette updated TINKERPOP-963:
---------------------------------------
    Fix Version/s:     (was: 3.2.7)

> SubgraphTraversalAnalyzer to determine what is really required from a 
> traversal.
> --------------------------------------------------------------------------------
>
>                 Key: TINKERPOP-963
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-963
>             Project: TinkerPop
>          Issue Type: Improvement
>          Components: process
>    Affects Versions: 3.1.0-incubating
>            Reporter: Marko A. Rodriguez
>            Assignee: Marko A. Rodriguez
>
> This idea is dependent on the work in TINKERPOP3-962 being complete.
> The idea is that there should be a {{SubgraphTraversalAnalyzer}}-type step 
> that for a {{traversal}} returns a 
> {{Pair<Traversal<Vertex,Vertex>,Traversal<Edge,Edge>>}} that defines two 
> "filters" that contain the subgraph that the traversal will execute in.
> For instance.
> {code}
> g.V().hasLabel("person").out("pets").hasLabel("dog")
> {code}
> {{SubgraphTraversalAnalyzer}} would return
> {code}
> Pair.with(
>   hasLabel("person","dog"),
>   hasLabel("pets"))
> {code}
> The difficulty with this ticket is that TinkerPop does NOT make any 
> assumptions about a schema. For instance, if the user did this:
> {code}
> g.V().hasLabel("person").out("pets")
> {code}
> Then the best we could return is:
> {code}
> Pair.with(
>   identity(),
>   hasLabel("pets"))
> {code}
> cc/ [~mbroecheler]



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to