anchor.diff:  GQ { /* GINQ CODE */ }
   ```
   For example,
  -[source, sql]
  +[source, groovy]
   ----
   include::../test/org/apache/groovy/ginq/GinqTest.groovy[tags=ginq_execution_01,indent=0]
   ----
   
  -[source, sql]
  +[source, groovy]
   ----
   include::../test/org/apache/groovy/ginq/GinqTest.groovy[tags=ginq_execution_02,indent=0]
   ----
  
positive.code: ==== List Comprehension
  
  List comprehension is an elegant way to define and create lists based on existing lists:
  [source, sql]
  ----
  include::../test/org/apache/groovy/ginq/GinqTest.groovy[tags=ginq_tips_01,indent=0]
  ----
  
  [source, sql]
  ----
  include::../test/org/apache/groovy/ginq/GinqTest.groovy[tags=ginq_tips_02,indent=0]
  ----
  
  GINQ could be used as list comprehension in the loops directly:
  [source, sql]
  ----
  include::../test/org/apache/groovy/ginq/GinqTest.groovy[tags=ginq_tips_03,indent=0]
  ----
  
  ==== Query JSON
  [source, sql]
  ----
  include::../test/org/apache/groovy/ginq/GinqTest.groovy[tags=ginq_tips_04,indent=0]
  ----
  
negative.code: For advanced users, you could customize GINQ behaviour by specifying your own target code generator.
  For example, we could specify the qualified class name `org.apache.groovy.ginq.provider.collection.GinqAstWalker` as the target code generator to generate GINQ method calls for querying collections,
  which is the default behaviour of GINQ:
  [source, groovy]
  ----
  include::../test/org/apache/groovy/ginq/GinqTest.groovy[tags=ginq_customize_01,indent=0]
  ----
  