public void visit(AttributeNode node) {
        if (state == null ) return;
        if (expressionMap.containsKey(node.getValue().toString())) {
            throw new IllegalArgumentException("Specifying multiple document types is not allowed");
        }
        for (AttributeNode.Item item : node.getItems()) {
            if (item.getType() != AttributeNode.Item.ATTRIBUTE) {
                throw new IllegalArgumentException("Only attribute items are supported");
            }
        }
        state.attribute = node;
    }
Class which converts a selection tree into a set of queries per document type.
If unsupported operations are or illegal arguments are encountered, an exception is thrown.

@author Ulf Lilleengen
document/src/main/java/com/yahoo/document/select/convert/SelectionExpressionConverter.java