i see you wrote on this page 
http://archives.postgresql.org/pgsql-general/2005-07/msg00319.php
  
test exsample:
	create or replace function test()
	returns void as 
	'
	begin 
		delete from regiondata;
		rollback;
	end;
	'language 'plpgsql';
but exception a error:    CONTEXT:  PL/pgSQL function "test" line 3 at SQL statement 
Use others' words :
>It is important not to confuse the use of BEGIN/END for grouping statements
> in PL/pgSQL with the database commands for transaction control. PL/pgSQL's
> BEGIN/END are only for grouping; they do not start or end a transaction
and can you tell me how to use rollback work in 'pgsql' function?  and give me a exsample?
        
 
        alan.nee
        neemem(at)gmail(dot)com
          2005-07-13