code: private static void removePrefixFromChildren(Element el, String prefix)
  			throws MarshalException {
  
  		NodeList nl = el.getChildNodes();
  		String localPrefix = null;
  		for (int i = 0; i < nl.getLength(); i++) {
  			Node n = nl.item(i);
  
  			if (n.getNodeType() != Node.ELEMENT_NODE) {
  				continue;
  			}
  
  			localPrefix = n.getPrefix();
  
  			if (localPrefix != null && localPrefix.length() > 0) {
  
  				if (!localPrefix.equals(prefix)) {
  					IfmapJLog.warn("Extended Identifier: Multiple namespaces in extended identifer used."
  							+ "IfmapJ thinks this is not a wise idea. Sorry!");
  					throw new MarshalException("Extended Identifier: Multiple namespaces in extended identifer used."
  							+ "IfmapJ thinks this is not a wise idea. Sorry!");
  				}
  
  				n.setPrefix(null);
  			}
  
  			removePrefixFromChildren((Element) n, prefix);
  			dropNamespaceDecls((Element) n);
  
  		}
  	}
docs: If any child of el has prefix as prefix, remove it. drop all namespace
  decls on the way. If we find an element with a different prefix, go
  crazy.
  
  @param el
  @param prefix
  @throws MarshalException