¿Es posible orderar por subclasss en un `NSFetchRequest` sin agregar attributes adicionales?

Quiero agrupar los resultados de una NSFetchRequest por entidad. Todas las entidades comparten el mismo padre abstracto. Por ejemplo:

 animal | |-cat | |-dog 

El NSFetchRequest ha includesSubentities NSFetchRequest establecidas TRUE y la entity establecida como animal . Es posible establecer sectionNameKeyPath de NSFetchedResultsController en entity.name pero no es posible hacer lo mismo con los sortDescriptors de NSFetchRequest debido al hecho de que los sortDescriptors se aplican a los attributes almacenados (es decir, datos en la database, no en los methods en las classs). Por lo tanto, la única forma de agrupar por tipo de entidad es agregar un atributo a la superclass que las subclasss pueden usar para identificarse.

Esto parece una locura porque socava la utilidad de la inheritance. Miré en la database SQLite y el tipo de entidad se almacena en la misma tabla que los attributes para que los datos requeridos ya estén en su lugar.

En resumen: ¿Es posible orderar por subclasss en una NSFetchRequest sin agregar attributes adicionales?

Creo que la respuesta es no.

Obtenido y orderado sucede en la Tienda (para la tienda SQLLite), por lo que los attributes deben formar parte del model de datos. Desde la guía de progtwigción de datos básicos (Persistent Store Features):

Hay algunas interacciones entre la búsqueda y el tipo de tienda. En los almacenes XML, binary y en memory, la evaluación del pnetworkingicado y los descriptores de sorting se realiza en Objective-C con acceso a todas las funcionalidades de Cocoa, incluidos los methods de comparación en NSString. El almacén SQL, por otro lado, comstack el pnetworkingicado y clasifica los descriptores en SQL y evalúa el resultado en la database. Esto se hace principalmente para el performance, pero significa que la evaluación ocurre en un entorno que no es de Cocoa, por lo que los descriptores de sorting (o pnetworkingicados) que dependen de Cocoa no pueden funcionar.

además

Además, no puede orderar properties transitorias utilizando la tienda SQLite.