--- /dev/null
+# Preliminary spec for varnish filtering language
+
+## What is interesting to select on?
+
+### Operators
+
+ =,<,>,<=,>= - Normal meaning for numbers
+ = - equality for strings
+ ~ - regex match (insensitive) for strings
+
+### Boolean logic (and, or, grouping?)
+
+ No grouping
+ Explicit and/or
+
+### host (both client and backend, DNS and ip/network)
+
+ "(host|backend|client) (operator) (IP/DNS)"
+
+### return code (please give me all 404s)
+
+ "(status|rxstatus|txstatus) (operator) (number)"
+
+### arbitrary http headers (from both backend and client)
+
+ "http.(headername) (operator) (string match)"
+
+### time to process request
+
+ "processingtime (operator) (timeunit)"