Java XML Attribute Namespace getNamespaceDeclarationPrefix(Attr attr)

Here you can find the source of getNamespaceDeclarationPrefix(Attr attr)

Description

get Namespace Declaration Prefix

License

Apache License

Declaration

public static String getNamespaceDeclarationPrefix(Attr attr) 

Method Source Code

//package com.java2s;
/*//w  w  w .j  a v  a2 s . c o m
 * Copyright (c) 2010-2013 Evolveum
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

import org.w3c.dom.Attr;

public class Main {
    public static final String W3C_XML_SCHEMA_XMLNS_URI = "http://www.w3.org/2000/xmlns/";

    public static String getNamespaceDeclarationPrefix(Attr attr) {
        if (!W3C_XML_SCHEMA_XMLNS_URI.equals(attr.getNamespaceURI())) {
            throw new IllegalStateException(
                    "Attempt to get prefix from a attribute that is not a namespace declaration, it has namespace "
                            + attr.getNamespaceURI());
        }
        String attrName = attr.getName();
        if (attrName.startsWith("xmlns:")) {
            return attrName.substring(6);
        }
        if ("xmlns".equals(attrName)) {
            return null;
        }
        throw new IllegalStateException(
                "Attempt to get prefix from a attribute that is not a namespace declaration, it is " + attrName);
    }
}

Related

  1. countNonNamespaceAttribures(NamedNodeMap attrs)
  2. isNamespaceDef(Attr attr)
  3. isNamespaceDefinition(Attr attr)
  4. isNoNamespaceAttribute(final XMLStreamReader reader, final int index)
  5. searchParentNamespaces(Node xml, String attribute)