Java XML Node Namespace hasNamespace(Node node, String prefix, String namespace)

Here you can find the source of hasNamespace(Node node, String prefix, String namespace)

Description

has Namespace

License

Open Source License

Declaration

public static boolean hasNamespace(Node node, String prefix, String namespace) 

Method Source Code


//package com.java2s;
/*/*w  w w .  j a  v  a  2s . c  o  m*/
 * Copyright (c) 1998-2013 Caucho Technology -- all rights reserved
 *
 * This file is part of Resin(R) Open Source
 *
 * Each copy or derived work must preserve the copyright notice and this
 * notice unmodified.
 *
 * Resin Open Source is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * Resin Open Source is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, or any warranty
 * of NON-INFRINGEMENT.  See the GNU General Public License for more
 * details.
 *
 * You should have received a copy of the GNU General Public License
 * along with Resin Open Source; if not, write to the
 *
 *   Free Software Foundation, Inc.
 *   59 Temple Place, Suite 330
 *   Boston, MA 02111-1307  USA
 *
 * @author Nam Nguyen
 */

import org.w3c.dom.*;

public class Main {
    public static boolean hasNamespace(Node node, String prefix, String namespace) {
        if (namespace == null) {
            return true;
        }

        String attrName;

        if (prefix != null && prefix.length() > 0) {
            attrName = "xmlns:" + prefix;
        } else {
            attrName = "xmlns";
        }

        while (node != null) {
            NamedNodeMap attrMap = node.getAttributes();

            if (attrMap == null) {
                break;
            }

            Attr attr = (Attr) attrMap.getNamedItem(attrName);

            if (attr != null) {
                return attr.getNodeValue().equals(namespace);
            }

            node = node.getParentNode();
        }

        return false;
    }
}

Related

  1. getNameSpaceUri(Node node, String content, String namespaceURI)
  2. getNamespaceURI(Node node, String searchPrefix)
  3. getNodeName(Node node, NamespaceContext namespaceContext)
  4. getNodeString(Node node, NamespaceContext context)
  5. hasDITANamespace(Node node)
  6. hasNamespaceURI(@Nullable final Node aNode, @Nullable final String sNamespaceURI)
  7. hasNamespaceURI(@Nullable final Node aNode, @Nullable final String sNamespaceURI)
  8. isAppropriateElement(Node iNode, String iNodeName, String iNamespace)
  9. isAppropriateElement(Node iNode, String iNodeName, String iNamespace)