As the only requirement checked inside doGenerate was '_scheme' I exchanged $requirements with $requiredSchemes. So the semanticof this argument changed. But as this method is protected and not a public api, i thought it may be okay. Do you think this is a BC? Otherwise the only solution would be adding an additional optional parameter.