return Sequence.EMPTY_SEQUENCE;
if(n != null) { switch(n.getNodeType()) { case Node.ELEMENT_NODE: case Node.ATTRIBUTE_NODE: retval = new QNameValue(context, ((QNameable) n).getQName()); break; default: retval = Sequence.EMPTY_SEQUENCE; break; } } return retval;
    public Sequence eval(Sequence[] args, Sequence contextSequence)            throws XPathException {        if(args[0].getLength() == 0)            return Sequence.EMPTY_SEQUENCE;        NodeValue val = (NodeValue)args[0];        Node node = val.getNode();        if(node.getNodeType() == Node.ELEMENT_NODE ||                node.getNodeType() == Node.ATTRIBUTE_NODE) {            if(val.getImplementationType() == NodeValue.IN_MEMORY_NODE)                return new QNameValue(context, ((NodeImpl)val).getQName());            else                return new QNameValue(context, ((org.exist.dom.NodeImpl)node).getQName());        }        return Sequence.EMPTY_SEQUENCE;    }