// there are such compound steps.
// Calculate all the options
inScopeOptions = parent.getInScopeOptions();
for (QName name : step.getOptions()) {
Option option = step.getOption(name);
RuntimeValue value = null;
if (optionsPassedIn != null && optionsPassedIn.containsKey(name)) {
value = optionsPassedIn.get(name);
} else {
if (option.getRequired() && option.getSelect() == null) {
throw XProcException.staticError(18, option.getNode(), "No value provided for required option \"" + option.getName() + "\"");
}
if (option.getSelect() == null) {
value = new RuntimeValue();
} else {
value = computeValue(option);
}
}