How does IBatis/MyBatis maps jdbcType=CURSOR to javaType=java.sql.ResultSet.

I have just started using MyBatis in our project and there are some existing xml mappers and codebase to start with. In those, I noticed that

and in the code

My question is, "resultSet" which is declared as OUT for mode, jdbcType=CURSOR and javaType=java.sql.ResultSet, on what basis we are typecasting the resultset to Collection. java.util.Collection does not extend java.sql.ResultSet. So how is this being done. Also, why it is Collection only, why not a List.

Thanks

Regards
KumarRaja

subject: How does IBatis/MyBatis maps jdbcType=CURSOR to javaType=java.sql.ResultSet.