To shrink a tablespace, Oracle try to release free space at the end of the data file(s).
During the tablespace life, you may have created some objects and then dropped them lots a time. The result is a tablespace fragmentation with maybe some part of your current data stored near the end of the data file(s).
In this case, doing nothing you cannot free more than the last free blocs of the data files.
To free more, you must first reorg (defragment) your tablespace. You can do that using Oracle Enterprise Manager, or you can do it manually by moving (rebuild) all objects in another tablespace and then move them back in their original tablespace.