getId(result, docs, id);
getId(context, result, docs, id);
	public Value eval(		StaticContext context,		DocumentSet docs,		NodeSet contextSet,		NodeProxy contextNode) throws XPathException {		if (getArgumentCount() < 1)			throw new XPathException("function id requires one argument");		if (contextNode != null)			contextSet = new SingleNodeSet(contextNode);		Expression arg = getArgument(0);		Value idval = arg.eval(context, docs, contextSet);		ArraySet result = new ArraySet(5);		if (idval.getType() == Value.isNodeList) {			NodeSet set = (NodeSet) idval.getNodeList();			for (int i = 0; i < idval.getLength(); i++) {				QName id = new QName("&" + set.get(i).getNodeValue(), "", null);				getId(result, docs, id);			}		} else {			QName id = new QName("&" + idval.getStringValue(), "", null);			getId(result, docs, id);		}		return new ValueNodeSet(result);	}