From the official document for Flink CEP, we see that the result of Relaxed Contiguity doesn't includes the result of Strict Contiguity "{a2 b}", however it contains the result "{a1 b}" , in my understanding the result of Relaxed Contiguity should contain the result of Strict Contiguity , also I cannot understand why Relaxed Contiguity contains the result "{a1 b}", so it is just a typo or I misunderstood the concept "Relaxed Contiguity"?
Below is extract from the official document with URL below.
"To illustrate the above with an example, a pattern sequence "a+ b" (one or more "a"’s followed by a "b") with input "a1", "c", "a2", "b" will have the following results:
Strict Contiguity: {a2 b} – the "c" after "a1" causes "a1" to be discarded.
Relaxed Contiguity: {a1 b} and {a1 a2 b} – c is ignored.
Non-Deterministic Relaxed Contiguity: {a1 b}, {a2 b}, and {a1 a2 b}."
https://ci.apache.org/projects/flink/flink-docs-release-1.5/dev/libs/cep.html
The issue fixed at Flink 1.6, please refer to the following URL https://ci.apache.org/projects/flink/flink-docs-release-1.6/dev/libs/cep.html