public void addParam(String name, String value, Context context, String ns, Location loc, Annotations anno)
throws BuildException {
try {
dtb.addParameter(name, value, new ValidationContextImpl(context, ns));
} catch (DatatypeException e) {
String detail = e.getMessage();
int pos = e.getIndex();
String displayedParam;
if (pos == DatatypeException.UNKNOWN) {
displayedParam = null;
} else {
displayedParam = displayParam(value, pos);
}
if (displayedParam != null) {
if (detail != null) {
error("invalid_param_detail_display", detail, displayedParam, (Locator) loc);
} else {
error("invalid_param_display", displayedParam, (Locator) loc);
}
} else if (detail != null) {
error("invalid_param_detail", detail, (Locator) loc);
} else {
error("invalid_param", (Locator) loc);
}
}
}