Strange behavior of atom()



I read the documentation on atom() in the manual

Returns true if expr is atomic (i.e. a number, name or string) else false. Thus 
atom(5) is true while atom(a[1]) and atom(sin(x)) are false (asuming a[1] and x 
are unbound).

and then I try the following:

Maxima 5.11.0 http://maxima.sourceforge.net
Using Lisp SBCL 0.9.14
Distributed under the GNU Public License. See the file COPYING.
Dedicated to the memory of William Schelter.
This is a development version of Maxima. The function bug_report()
provides bug reporting information.
(%i1) atom(sin(2));
(%o1)                                false
(%i2) atom(sin(2.0));
(%o2)                                true
(%i3) atom(sin(x));
(%o3)                                false
(%i4) x:3;
(%o4)                                  3
(%i5) atom(sin(x));
(%o5)                                false
(%i6) atom(sin(x/2));
(%o6)                                false
(%i7) atom(sin(0.1*x));
(%o7)                                true
(%i8) 


It seems to me that the documentation not consistent with these results.
Or am I missing something?
Thanks for your help.

Kostas