PagingModelMemoryProxy inherits MemoryProxy<PagingLoadResult<? extends ModelData>> while MemoryProxy doesn't have the dependency on ModelData in its definition.
Since you can use beans in PagingModelMemoryProxy which are marked with BeanModelMarker or BeanModelTag interfaces, it would be better to have

PagingModelMemoryProxy<D> inherits MemoryProxy<PagingLoadResult<D>>
I'm trying to define a method which must return a proxy to use in grids which must paginate its results either locally or remotely. This method will be implemented returning either, a RpcProxy or a PagingModelMemoryProxy but the Rpc proxy must return paginated data. I tried to define it as returning DataProxy<PagingLoadResult<T>> where T is any bean but it fails when I try to return a PagingModelMemoryProxy since it inferes that T must extend ModelData. In the end I have to define my method as returning DataProxy without further information, which removes some validation in the compiler and the ? extends ModelData dependency does not have any real effect in the behavior of PagingModelMemoryProxy.