public void setImportPrecedence(final int precedence) { // Set import precedence for this stylesheet _importPrecedence = precedence; // Set import precedence for all included stylesheets final Enumeration elements = elements(); while (elements.hasMoreElements()) { SyntaxTreeNode child = (SyntaxTreeNode) elements.nextElement(); if (child instanceof Include) { Stylesheet included = ((Include) child).getIncludedStylesheet(); if (included != null && included._includedFrom == this) { included.setImportPrecedence(precedence); } } } // Set import precedence for the stylesheet that imported this one if (_importedFrom != null) { if (_importedFrom.getImportPrecedence() < precedence) { final Parser parser = getParser(); final int nextPrecedence = parser.getNextImportPrecedence(); _importedFrom.setImportPrecedence(nextPrecedence); } } // Set import precedence for the stylesheet that included this one else if (_includedFrom != null) { if (_includedFrom.getImportPrecedence() != precedence) _includedFrom.setImportPrecedence(precedence); } }