if (value == null && runtime.getAllowGeneralExpressions()) {
parseParameterValueNode(impl, pnode);
return;
}
Parameter p = new Parameter(step.getXProc(),pnode);
String port = p.getPort();
String name = pnode.getAttributeValue(_name);
String ns = pnode.getAttributeValue(_namespace);
QName pname = null;
if (ns == null) {
pname = new QName(name,pnode);
} else {
int pos = name.indexOf(":");
if (pos > 0) {
name = name.substring(pos);
QName testNode = new QName(name,pnode);
if (!ns.equals(testNode.getNamespaceURI())) {
throw XProcException.dynamicError(25);
}
}
pname = new QName(ns,name);
}
if (XProcConstants.NS_XPROC.equals(pname.getNamespaceURI())) {
throw XProcException.dynamicError(31);
}
p.setName(pname);
for (XdmNode attr : new AxisNodes(pnode, Axis.ATTRIBUTE)) {
QName aname = attr.getNodeName();
if ("".equals(aname.getNamespaceURI())) {
if (!aname.equals(_name) && !aname.equals(_namespace) && !aname.equals(_value)) {