Enable different file types to implement their own kind of key