anchor.diff:  The intended use of type annotations is that they express that the annotated term either has, evaluates to, or is coerced to a value of the annotated type.
   
   === Interaction with existing features
  -This CIP adds the following new keywords for all type names. It is expected that these type name keywords are only valid in specific contexts in the grammar (mostly in type annotations but also possibly in operators). The likelihood of conflict with existing (or future) production rules is therefore minimal.
  +This CIP adds new keywords for all type names. It is expected that these type name keywords are only valid in specific contexts in the grammar (mostly in type annotations but also possibly in operators). The likelihood of conflict with existing (or future) production rules is therefore minimal.
   
   === Alternatives
   
  
positive.code: 
  optional type = "?", type;
  
  scalar type 	= "ANY"
                | "BOOLEAN"
                | "INTEGER"
                | "FLOAT"
                | "IDENTITY"
                | "MAP"
                | "NODE"
                | "STRING"
                | "RELATIONSHIP"
                | "PATH"
                | "NUMBER"
                | "DATETIME"
                | "LOCALDATETIME"
                | "DATE"
                | "LOCALDATE"
                | "LOCALTIME"
                | "DURATION”
                ;
  
  container type	= "LIST", "<", type, ">";
  
  type annotation = term, "::", type ;
  ----
  
negative.code: === Overview
  For the purposes of this CIP, a type system is a system of classifying expressions according to what kinds of values they may evaluate to during the execution of a Cypher query. It does *not *include a specification of a type inferencing and checking algorithm for Cypher queries.
  
  Cypher today has a rich type system that unifies Java implementation types into a coherent type hierarchy and an accompanying type checker that supports rich types with https://en.wikipedia.org/wiki/TypeParameter[type parameters] and https://en.wikipedia.org/wiki/Union_type[union types]. So far it has not been possible to explicitly specify the type of an expression in a query.
  
  This CIP proposes to introduce syntax for type literals and for type annotations.
  
  == Proposal
  
  === Types and Type Literal Syntax
  
  