private static boolean isMap(Node param) {
        NodeList nodeList = param.getChildNodes();
        for (int i = 0; i < nodeList.getLength(); i++) {
            Node n = nodeList.item(i);
            if (n.getNodeType() == 1) {
                if (n.hasAttributes()) {
                    if (n.getAttributes().getNamedItem("from") != null &&
                            n.getAttributes().getNamedItem("to") != null) {
                        return true;
                    } else if (n.getAttributes().getNamedItem("k") != null &&
                            n.getAttributes().getNamedItem("v") != null) {
                        return true;
                    }
                }
            }
        }
        return false;
    }
Use this to build a list of components for a composite item (e.g.
CompositeMetadataFilter, FetcherManager), each with their own configurations

@param compositeElementName
@param itemName
@param is
@throws TikaConfigException
@throws IOException
tika-core/src/main/java/org/apache/tika/config/ConfigBase.java