Metadata for your java classes, so in runtime you can choose what what is the best, good for libraries with fast changes.