Java XML Attribute Get getAttributeUri(Element leaf, Element parent, String defaultBaseUri)

Here you can find the source of getAttributeUri(Element leaf, Element parent, String defaultBaseUri)

Description

Get uri of a leaf element which is an attribute of its parent.

License

Apache License

Parameter

Parameter Description
leaf a parameter
parent a parameter
defaultBaseUri a parameter

Declaration

public static String getAttributeUri(Element leaf, Element parent, String defaultBaseUri) 

Method Source Code

//package com.java2s;
/*/*from w  w  w . j  a v a2  s  .c o  m*/
 *    Copyright (c) 2013, University of Toronto.
 * 
 *    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.Element;

public class Main {
    /**
     * Get uri of a leaf element which is an attribute of its parent.
     *
     * @param leaf
     * @param parent
     * @param defaultBaseUri
     * @return
     */
    public static String getAttributeUri(Element leaf, Element parent, String defaultBaseUri) {
        return hasNamespace(leaf) && parent != null ? getSchemaUri(leaf, defaultBaseUri)
                : getSchemaUri(parent, defaultBaseUri) + "." + leaf.getNodeName();
    }

    /**
     * Check if the given element uses namespace for its name.
     *
     * @param element
     * @return
     */
    public static boolean hasNamespace(Element element) {
        return element.getNamespaceURI() != null;
    }

    /**
     * Get schema uri of an element (for leaf element, use getAttributeUri
     * instead).
     *
     * @param element
     * @param defaultBaseUri
     * @return
     */
    public static String getSchemaUri(Element element, String defaultBaseUri) {
        if (defaultBaseUri == null) {
            throw new IllegalArgumentException("Default base URI cannot be null.");
        }
        String baseUri = element.getNamespaceURI();
        baseUri = baseUri != null ? baseUri : defaultBaseUri;
        return baseUri + "#" + element.getLocalName();
    }
}

Related

  1. getAttributeStringValue(String attribute, NamedNodeMap namedNodeMap)
  2. getAttributesValues(final StartElement element)
  3. getAttributeTable(Element element)
  4. getAttributeText(final Node node, final String name)
  5. getAttributeTextContent(Node node, String attiribute_name)
  6. getAttributeValue(@Nonnull final Element aElement, @Nonnull final String sAttrName)
  7. getAttributeValue(Element e, String key)
  8. getAttributeValue(Element e, String name)
  9. getAttributeValue(Element el, String attributeName)