Isn't 'file system path' not really accurate for non-file-based backends? How far should the abstraction go here? Could it even return a database key?