public boolean testElementShorthand()

in src/main/java/org/apache/maven/xinclude/stax/DOMXMLElementEvaluator.java [54:77]


    public boolean testElementShorthand(XMLElement<Element> element, String shorthand) {
        // Simple http://www.w3.org/TR/xml-id/ support for now until we support full scheme based ID's.
        Element domElement = element.getSource();
        String attr = domElement.getAttributeNS("http://www.w3.org/XML/1998/namespace", "id");
        if (Objects.equals(attr, shorthand)) {
            return true;
        }
        if (dtd != null) {
            Map<PrefixedName, DTDElement> map = dtd.getElementMap();
            if (map != null) {
                DTDElement dtdElement = map.get(new PrefixedName(domElement.getPrefix(), domElement.getLocalName()));
                if (dtdElement != null) {
                    DTDAttribute dtdAttribute = dtdElement.getIdAttribute();
                    if (dtdAttribute != null) {
                        attr = domElement.getAttribute(dtdAttribute.getName().getLocalName());
                        if (Objects.equals(attr, shorthand)) {
                            return true;
                        }
                    }
                }
            }
        }
        return false;
    }