src/main/java/org/xmlet/xsdparser/xsdelements/XsdAbstractElement.java
static ReferenceBase xsdParseSkeleton(Node node, XsdAbstractElement element){
        XsdParserCore parser = element.getParser();
        Node child = node.getFirstChild();

        while (child != null) {
            if (child.getNodeType() == Node.ELEMENT_NODE) {
                String nodeName = child.getNodeName();

                BiFunction<XsdParserCore, Node, ReferenceBase> parserFunction = XsdParserCore.getParseMappers().get(nodeName);

                if (parserFunction != null){
                    XsdAbstractElement childElement = parserFunction.apply(parser, child).getElement();

                    childElement.accept(element.getVisitor());

                    childElement.validateSchemaRules();
                }
            }

            child = child.getNextSibling();
        }

        ReferenceBase wrappedElement = ReferenceBase.createFromXsd(element);

        parser.addParsedElement(wrappedElement);

        return wrappedElement;
    }
static ReferenceBase xsdParseSkeleton(Node node, XsdAbstractElement element){
        XsdParserCore parser = element.getParser();
        Node child = node.getFirstChild();

        while (child != null) {
            if (child.getNodeType() == Node.ELEMENT_NODE) {
                String nodeName = child.getNodeName();

                BiFunction<XsdParserCore, Node, ReferenceBase> parserFunction = XsdParserCore.getParseMappers().get(nodeName);

                if (parserFunction != null){
                    XsdAbstractElement childElement = parserFunction.apply(parser, child).getElement();

                    childElement.accept(element.getVisitor());

                    childElement.validateSchemaRules();
                }
            }

            child = child.getNextSibling();
        }

        ReferenceBase wrappedElement = ReferenceBase.createFromXsd(element);

        parser.addParsedElement(wrappedElement);

        return wrappedElement;
    }
static ReferenceBase xsdParseSkeleton ( Node node , XsdAbstractElement element ) { XsdParserCore parser = element . getParser ( ) ; Node child = node . getFirstChild ( ) ; while ( child != null ) { if ( child . getNodeType ( ) == Node . ELEMENT_NODE ) { String nodeName = child . getNodeName ( ) ; BiFunction < XsdParserCore , Node , ReferenceBase > parserFunction = XsdParserCore . getParseMappers ( ) . get ( nodeName ) ; if ( parserFunction != null ) { XsdAbstractElement childElement = parserFunction . apply ( parser , child ) . getElement ( ) ; childElement . accept ( element . getVisitor ( ) ) ; childElement . validateSchemaRules ( ) ; } } child = child . getNextSibling ( ) ; } ReferenceBase wrappedElement = ReferenceBase . createFromXsd ( element ) ; parser . addParsedElement ( wrappedElement ) ; return wrappedElement ; }
The base code for parsing any {@link XsdAbstractElement}. All the concrete implementations of this class should
call this method in order to parse its children.
@param node The node from where the element will be parsed.
@param element The concrete element that will be populated and returned.
@return A wrapper object that contains the parsed XSD object.
The base code for parsing any {