anchor.diff:  [abstract]
   .Abstract
   
  -This CIP specifies the Public Type System (PTS) of Cypher and introduces literal syntax for writing down types as well as new syntax for type annotations. The proposed type annotation syntax does not change the Cypher grammar right now but rather is intended as a template to be used by future CIPs. This CIP also informatively discusses future syntax that might use the introduced literal type syntax.
  +This CIP specifies the Public Type System of Cypher and introduces literal syntax for writing down types as well as new syntax for type annotations. The proposed type annotation syntax does not change the Cypher grammar right now but rather is intended as a template to be used by future CIPs. This CIP also informatively discusses future syntax that might use the introduced literal type syntax.
   
   toc::[]
   
  
positive.code: 
  This CIP also introduces an additional nullable type called `VOID`. `VOID` is intended to be used as the return type of user defined procedures that execute without producing a result value, i.e. the return type of procedures with side effects. `VOID` is a subtype of `ANY?`. In an expression context, `NULL` is the only value that inhibits the `VOID` type, indicating a missing "real" return value (Note though that Cypher currently does not have any expressions of type `VOID` and this is merely defined here for completeness).
  
  ==== Reserved type names
  
  In addition to the types above, the following type names are reserved by this CIP for future use, both in the given material and a nullable variant:
  
   * `BYTES`
   * `IDENTITY`
   * `POINT`
  
  === Type Annotation
  
  To specify the type of a term in future changes to the Cypher grammar, this CIP proposes using the following syntax
  
negative.code: 
  == References
  
  * Wikipedia on https://en.wikipedia.org/wiki/Type_system[Type System]
  * CypherType and symbols package object in the Neo4j implementation
  * SPARQL and SQL standards
  
  