Both JPA and JDO are based on accessing and managing data in the database using persistable classes (mainly entity classes in JPA or persistence capable classes in JDO).
Usually, this is very convenient. Sometimes, however, it might be useful to access data without user defined persistable classes. For example, a tool that finds and replaces strings in the database should be generic and should not be bound to specific entity classes and persistent fields.
Therefore, an API for accessing (and maybe also modifying) data in the database without classes can be useful in some applications.