Skip to content

Commit cbb52a8

Browse files
committed
Fixups
1 parent 4d2135e commit cbb52a8

File tree

1 file changed

+19
-16
lines changed

1 file changed

+19
-16
lines changed

cip/1.accepted/CIP2017-06-18-multiple-graphs.adoc

+19-16
Original file line numberDiff line numberDiff line change
@@ -288,7 +288,7 @@ If one of the bound variables in a pattern is an entity that is not contained in
288288

289289
An error is raised, if a statement attempts to update an entity that is not contained in the working graph.
290290

291-
==== Copy patterns
291+
=== Copy patterns
292292

293293
A new type of pattern that is called a *copy pattern* may be used to copy all labels and properties of a node or the relationship type and all properties of a relationship.
294294
The syntax of clone patterns is:
@@ -305,20 +305,6 @@ Copying relationships ignores the start and the end node of the relationship.
305305

306306
Copy patterns may be used in updating statements.
307307

308-
==== Clone patterns
309-
310-
A new type of pattern that is called a *clone pattern* may be used find the clone (if present) for a source entity as determined by provenance tracking.
311-
312-
[source, cypher]
313-
----
314-
MATCH (a)-[r]->(b)
315-
FROM another_graph
316-
MATCH (x CLONE OF b)-[CLONE OF r]->()
317-
...
318-
----
319-
320-
Clone patterns should not be used in updating statements.
321-
322308

323309
=== Returning a graph result
324310

@@ -381,6 +367,7 @@ A single statement may end in a `<graph-construction>`.
381367

382368
// TODO: FORK nodes
383369
// TODO: REMOVE n.prop on clokes
370+
// TODO: Define lineage tree
384371
In order to reconstruct subgraph structures from other graphs in the new graph, `CONSTRUCT` supports the addition of *cloned entities* in the new graph.
385372

386373
_Definition_: *Cloning* ensures that exactly one new entity (called a *clone*) is created in the new graph for a given cloned entity (called its *source*) from a source graph.
@@ -416,7 +403,7 @@ Constructed graphs are built by explicitly populating them with entities using t
416403
* `REMOVE`
417404
* `[DETACH] DELETE`
418405

419-
An error is raised for any attempt to `SET` labels or properties of cloned entities during graph construction.
406+
An error is raised for any attempt to `SET` or `REMOVE` labels or properties of cloned entities during graph construction.
420407

421408

422409
==== Updating constructed graphs
@@ -435,6 +422,21 @@ Constructed graphs may only be updated by
435422
An error is raised if an update to a constructed graph leads to a constraint violation in a source graph.
436423

437424

425+
=== Clone patterns
426+
427+
A new type of pattern that is called a *clone pattern* may be used find the clone (if present) for a source entity as determined by provenance tracking.
428+
429+
[source, cypher]
430+
----
431+
MATCH (a)-[r]->(b)
432+
FROM another_graph
433+
MATCH (x CLONE OF b)-[CLONE OF r]->()
434+
...
435+
----
436+
437+
Clone patterns should not be used in updating statements.
438+
439+
438440
=== Graph union
439441

440442
The *common graph union* of two graphs may be computed using the following syntax:
@@ -540,6 +542,7 @@ The `catalog(g)` function returns the catalog name for the graph identity `g` or
540542

541543
The `catalog()` function returns the catalog name for the working graph or `NULL` if the working graph is a dynamically constructed graph.
542544

545+
// TODO: failIfNull(value, message)
543546

544547

545548
== Examples

0 commit comments

Comments
 (0)