|Did you know ...
id(ID) appears in the option list of the handler, ID
it is used and takes preference over using the predicate.
If the handler is declared with a pattern, e.g.,
the location to access a particular user may be accessed using
user('Bob'). The number of arguments to the compound term must
match the number of variables in the path pattern.
A plain atom ID can be used to find a handler with a pattern. The
returned location is the path up to the first variable, e.g.,
/user/ in the example above.