You could also use a post-filter, i.e. check the resulting nodes together
against your user.

But in general yes you'd have to use something like this.
Alternatively you could also set a "owner" property on all data and only
have the user see their data.

On Thu, Jul 26, 2018 at 5:47 PM, Juha Mäkeläinen <juha.makelai...@iki.fi>
wrote:

> Hello! We are wondering how to implement user views in our system. Each
> our users have their own set of genealogical data. The users mostly access
> only their own working data (which may be later merged to common data after
> approval). Their data nodes are identified by linking them to the "User"
> node.
>
> Is the only way to write User match in my Cypher clauses? Could I somehow
> define a pre-filtered active subgraph, where cypher clauses are applied
> (reminding sql view, which is'nt available in Neo4j, see
> https://groups.google.com/d/msg/neo4j/kFa8_ZJYzEM/0KuulGphrTYJ)?
>
> Example: In a query `match (p:Person) --> (e:Event) <-- (n:Place)` each
> p, e, n are owned by current user. My solution is quite cumbersome:
>
> match (u:User {name:"John"})
> with u
>     match (u) --> (p:Person), (u) --> (e:Event), (u) --> (x:Place)
> with p, e, x
>     match (p) --> (e) --> (x)
> return p.id, e.id, x.id
>
> The same User match (the first 4 lines) must ne written in all my Cypher
> clauses.
>
> --
> You received this message because you are subscribed to the Google Groups
> "Neo4j" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to neo4j+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Neo4j" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to neo4j+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to