An html version of knightchase.cql

; knightchase.cql can be downloaded here.
;Search for positions in which a knight chases a  knight of another color, continually offering to sacrifice itself
(match
 :pgn heijden.pgn
 :output out.pgn
 :forany chaser [nN]  ; this is the chasing knight
 :forany chasee [Nn]  ; this is the chased knight
 (position 
  :tagmatch chaser n ; make sure the chaser is really a black knight, 
                     ;not a N or a pawn that will promote to one
  :tagmatch chasee N ; make sure the chasee is really a white knight, 
                     ; and not a n or a pawn that will promote to one
	   :sequence ((position :wtm :attackcount $chaser $chasee 1 :movefrom $chasee) 
		      (position :movefrom $chaser)
                      (position :attackcount $chaser $chasee 1))
	   :matchcount 4 100
	   :flipcolor
 ))