Get the first child org.w3c.dom.Element Element of an org.w3c.dom.Element Element . - Java XML

Java examples for XML:XML Element Child

Description

Get the first child org.w3c.dom.Element Element of an org.w3c.dom.Element Element .

Demo Code

/*//from ww w  .  j av  a  2 s.c o  m
 *  Copyright 2006-2015 WebPKI.org (http://webpki.org).
 *
 *  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.
 *
 */
//package com.java2s;

import org.w3c.dom.Node;
import org.w3c.dom.Element;

public class Main {
    /**
     * Get the first child {@link org.w3c.dom.Element Element} of an {@link org.w3c.dom.Element Element}.
     * <p>{@link org.w3c.dom.Node Nodes} other than {@link org.w3c.dom.Element Elements} are ignored.
     * @param parent Parent
     * @return The first child {@link org.w3c.dom.Element Element} or null if none exists.
     */
    public static Element firstChildElement(Element parent) {
        Node n = parent.getFirstChild();

        if (n == null || n instanceof Element) {
            return (Element) n;
        } else {
            return nextSiblingElement(n);
        }
    }

    /**
     * Get the next sibling {@link org.w3c.dom.Element Element} of a {@link org.w3c.dom.Node Node}.
     * <p>{@link org.w3c.dom.Node Nodes} other than {@link org.w3c.dom.Element Elements} are ignored.
     * @param n Node
     * @return The first child {@link org.w3c.dom.Element Element} or null if none exists.
     */
    public static Element nextSiblingElement(Node n) {
        do {
            if ((n = n.getNextSibling()) == null) {
                return null;
            }
        } while (!(n instanceof Element));

        return (Element) n;
    }
}

Related Tutorials