move identification metadata in annotation instead of interface