anchor.diff:          member x.CypherExprForCreate =
               match x with
               | LeftRel(lnode,rel,rnode,_) ->
  -                sprintf "%s<-%s-%s" lnode.CypherExpr rel.CypherExprForCreate rnode.CypherExpr
  +                sprintf "%s<-%s-%s" lnode.CypherExprForCreate rel.CypherExprForCreate rnode.CypherExprForCreate
               | RightRel(lnode,rel,rnode,_) ->
  -                sprintf "%s-%s->%s" lnode.CypherExpr rel.CypherExprForCreate rnode.CypherExpr
  +                sprintf "%s-%s->%s" lnode.CypherExprForCreate rel.CypherExprForCreate rnode.CypherExprForCreate
               | LeftOrRightRel(lnode,rel,rnode) ->
  -                sprintf "%s-%s-%s" lnode.CypherExpr rel.CypherExprForCreate rnode.CypherExpr
  +                sprintf "%s-%s-%s" lnode.CypherExprForCreate rel.CypherExprForCreate rnode.CypherExprForCreate
   
           member x.CypherExpr =
               match x with
  
positive.code:     let inline (|IsNodeExpr|_|) expr: Option<NodeExpr> =
          match expr with
          | Var(var) -> Some (NodeExpr.Var(var))
          | ValueWithName(value, typ, name) ->
              // TODO denisok: extract constant
              let paramName = sprintf "__neo4jnode__%s" name
              let cypherExpr = sprintf "(%s:%s {%s})" name typ.Name paramName
  
negative.code: 
                  let withParamFolder (cypher: ICypherFluentQuery) (paramName, value) =
                      cypher.WithParam(paramName, value)
  
                  debug ("Create relation: " + x.CypherExprForCreate)
  
                  if isUnique then
                      cypher.CreateUnique(x.CypherExprForCreate)
  